Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

VBA: Über Input einen Wert mit der Maus in eine Variable schreiben
#1
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
Antworten Top
#2
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
Antworten Top
#3
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
Antworten Top
#4
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
Antworten Top
#5
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
Antworten Top
#6
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!
Antworten Top
#7
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.
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!

Grüße aus Norderstedt, Peter
Antworten Top
#8
Den Eindruck habe ich mittlerweile selber...
Könnten Sie mir kurzen Tip geben, wie Userform funktioniert?
Danke im Voraus.
Antworten Top
#9
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!
Herzliche Grüße aus dem Rheinland
Jörg

[Windows 10, Microsoft 365]
Antworten Top
#10
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
[-] Folgende(r) 1 Nutzer sagt Danke an Hagen Tripkau für diesen Beitrag:
  • silcono
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste