VBA mit variablem Eingabewert
#1
Hallo zusammen,

ich habe ein Makro, dass per sendkeys ein anderes Programm steuert.

In diesem Programm muss in an einer Stelle einen Wert eintragen, den ich, bevor ich das Makro starte, gerne auswählen würde.

Ich möchte in Excel vorab eine Auswahl per Auswahlkästchen (Optionsfeld) erstellen, diese Auswahl soll dann einen Wert in die Makro-Formel schreiben bzw. an der richtigen Stelle dann per sendkeys in das externe Programm.
Besonderheit hierbei ist noch, dass, sofern zwei oder mehrere Auswahlen getroffen werden, jede Auswahl durch ein "Komma" getrennt werden.


Falls ich noch irgendetwas liefern soll, sagt bitte bescheid.
Code:
Optionsfeld

Rot
Blau
Grün
Lila



Code:
SendKeys "rot", Wait:=True
SendKeys "{TAB}", Wait:=True
Top
#2
Hallo,

so bekommst Du die Inhalte ausgewählter (selektierter) Zellen in einen Text, denn Du in Deinem Makro verwenden könntest.

Code:
Option Explicit

Sub test()
'Variablendeklaration
Dim Zellen As Range, strText As String
'Schleife ueber alle gewaehlten Zellen
For Each Zellen In Selection
 'Text uebernehmen und Komma setzen
 strText = Zellen.Value & ","
'Ende Schleife ueber alle gewaehlten Zellen
Next
'Letztes Komma entfernen
strText = Left(strText, Len(strText) - 1)
End Sub
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top
#3
vielen Dank. Ich habe es mittlerweile gelöst! Smile
Top
#4
(30.09.2019, 08:49)pfann schrieb: vielen Dank. Ich habe es mittlerweile gelöst! Smile

Moin,

nachfolgende Leser wären bestimmt dankbar, wenn sie an deiner Lösung teilhaben könnten.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Top
#5
ja natürlich, sorry.

In Excel habe ich eine Dropdown-Auswahlliste erstellt und per sendkeys range ("A1") auf dieses Feld verwiesen.
Top


Gehe zu:


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