Clever-Excel-Forum

Normale Version: VBA: Über Input einen Wert mit der Maus in eine Variable schreiben
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Geht das?
Ich möchte per INPUT einer Variablen per Mausklick einen Wert zuweisen.
Normalerweise kann man nur per Tastatur bei INPUTBOX einen Wert bestimmen.
z.B.
Name=inputbox("Bitte Namen per Mausklick festlegen")

Hoffentlich habe ich mich verständlich ausgedrückt...
Dank im Voraus.
HT
Hallöle,

für mich stellt sich die Frage, woher nimmt deine Maus den Wert her?
Oder soll deine Maus bei Klick in die Inputbox, immer den selben Wert verwenden?

Grüße
Silcono
Nein, nicht den selben Wert.
Ich möchte zu einem x-beliebigen (oder ggf. auch definiertem) Tabellenblatt springen und dann per Mausklick auf die betreffende Zelle den in dieser Zelle enthaltenen Wert in die Variable schreiben.
(Entschuldige mich, wenn ich wegen fehlender Kenntnisse nicht klar genug bin.)
Danke aber jetzt schon mal!
hg Hagen
Stellt sich noch die Frage, brauchst du denn unbedingt die Inputbox?
Bzw. was passiert wenn der gegebene Wert nun in der Inputbox ist? Was soll die Inputbox bewirken, wenn diese bestätigt wird?

Sorry, wenn ich Frage ;) muss nur bisschen verstehen, da es mehrere Möglichkeiten gibt :)

Grüße
Silcono
Also die eine Möglichkeit wäre, die Zelle vor dem Aufruf der Inputbox auszuwählen. Erst dann die Inputbox aufrufen, als Bsp. hier der Code:

Code:
Sub test()
   
   Dim Name As String

   Name = InputBox(test, , Selection.Value) 'Selection.Value ist in diesem Fall deine ausgewählte Zelle und wird als Default-Wert in der Inputbox eingetragen.
    
End Sub
 Grüße
Silcono
Zuerst möchte ich mich herzlich bedanken, dass ich hier KOSTENLOSE Hilfe bekomme!

Zur Lösung: JA, das funktioniert so mit selection.value
Und trotzdem nochmal leise nachgefragt:
Geht die Auswahl eines Wertes aus einer Zelle für eine Variable (z.B. name) mit der Maus innerhalb eines VBA-Makros?
Vielleicht mit einer ComboBox?

Die Aufgabenstellung vielleicht noch einmal zur Erklärung:
In einem Übersichtstabellenblatt stehen nacheinander Name - und in der jeweiligen Datumsspalte: Einsatzort
                        DATUM 1  DATUM2
Mustermann 1    ORT 1       Ort2
usw.

aus dieser Übersicht möchte ich individuell für Mustermann 1 und die anderen einen individuellen Plan erstellen.
Mustermann 1
hat Einsatz
DATUM    ORT

Aber die erste Lösung geht auch. Und nochmals DANK!
Hallo,

Zitat:Die Aufgabenstellung vielleicht noch einmal zur Erklärung:
In einem Übersichtstabellenblatt stehen nacheinander Name - und in der jeweiligen Datumsspalte: Einsatzort

aus dieser Übersicht möchte ich individuell für Mustermann 1 und die anderen einen individuellen Plan erstellen.

 das scheint mir ein bischen von hinten durch's Knie in's Auge geschossen zu sein.
Würde ich mich damit beschäftigen müssen, dann würde ich das eher mit einem Userform lösen wollen.
Den Eindruck habe ich mittlerweile selber...
Könnten Sie mir kurzen Tip geben, wie Userform funktioniert?
Danke im Voraus.
Hi,

wäre eine VBA-Lösung möglich? Dann als Denkansatz:
(Einfügen in "DieseArbeitsmappe"):


Code:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)

    MsgBox "Inhalt: " & Target.Value, vbOKOnly Or vbExclamation, "Titel"

End Sub

Das geht auch nur für einzelne Arbeitsblätter. Bei der Programmierung kannst du dann Bereiche einschränken oder ausschließen oder nur bestimmte Inhalte zulassen. Statt Msgbox wäre auch die Zwischenablage eine Möglichkeit, jeden angeklickten Wert einer Zelle ins Clipboard zu kopieren.

Ansonsten schließe ich mich den anderen Helfern an: eine etwas genauere Beschreibung deines Vorhabens, wofür du das verwenden möchtest, wäre hilfreich.

Viel Erfolg!
Prima. Das hilft mir sehr.
Danke an alle Helfer.
(Ich begreife immer noch nicht so recht, dass es in diesem Forum Menschen gibt, die anderen kostenlos und uneigennützig helfen.
Ist das ein Anachronismus?

hg aus Schleswig-Holstein
Seiten: 1 2