Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1732to1736
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Wert ComboBox in Macro einfügen

Wert ComboBox in Macro einfügen
07.01.2020 17:37:48
Markus
Liebes Forum,
über folgenden Code fülle ich meine ComboBox:
Private Sub UserForm_Initialize()
With Me.ComboBox1
.AddItem "aa"
.AddItem "bb"
.AddItem "cc"
End With
End Sub
um das Makro nicht ständig manuell ändern zu müssen, möchte ich die Auswahl der ComboBox1 in das folgende Makro je nach getätigter Auswahl übertragen.
...
Set wb = ThisWorkbook
Set ws = ThisWorkbook.Worksheets("aa")
...
und statt aa könnte bspw. auch "bb" oder "cc" in der ComboBox1 ausgewählt sein und folglich auch im Makro erscheinen.
Kann man die jeweilige Auswahl mit dem Makro kombinieren? Irgendwas mit ComboBox1.Value etc.?
Vielen Dank für eure Hilfe!

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wert ComboBox in Macro einfügen
07.01.2020 17:48:34
Werner
Hallo,
da stellt sich erst mal die Frage: Wo ist dieses Makro?
Im Codemodul der Userform auf der auch deine Combobox ist?
Es macht keinen Sinn hier einfach mal zwei Codezeilen zu posten.
Gruß Werner
AW: Wert ComboBox in Macro einfügen
07.01.2020 18:20:00
Markus
Hallo Werner,
danke für deine Antwort.
Makro ist ein Modul. Es geht darum einen Kopiervorgang auszulösen.
Public Sub Kopieren()
Dim wb_quelle as Workbook
Dim wb_ziel as Workbook
Dim ws_quelle as Worksheet
Dim ws_ziel as Worksheet
On Error Resume Next
Set wb_ziel = Workbooks("xyz")
On Error GoTo 1
If wb_ziel Is Nothing Then
Workbooks.Open ("\\ ......\xyz.xlsm")
End If
1
Set wb_quelle = ThisWorkbook
Set ws_quelle = ThisWorkbook.Worksheets("aa") 'auf diesen Blattnamen soll sich die ComboBox1  _
beziehen
Set ws_ziel = Workbooks("xyz.xlsm").Worksheets("zieltabelle")
Application.ScreenUpdating = False
i = ws_ziel.Range ("A1000").End(xlUp).Row+1
If ws_quelle.Range ("B2") = "September" Then
ws_ziel ("A" & i).Value = ws_quelle.Range("C2").Value
ws_ziel ("E" & i).Value = ws_quelle.Range("D2").Value
ws_ziel ("F" & i).Value = ws_quelle.Range("G2").Value
Else:GoTo 0
End If
i=i+1
0
Application.ScreenUpdating = True
MsgBox("Datenübertragung ausgeführt")
End Sub
Vielen Dank!
Anzeige
AW: Wert ComboBox in Macro einfügen
08.01.2020 10:13:26
Werner
Hallo Martin,
weitere Frage: Dann gehe ich recht in der Annahme, dass du auf deiner Userform einen Commandbutton hast, mit dem du dann das Makro "Kopieren" aufrufst?
Gruß Werner
AW: Wert ComboBox in Macro einfügen
08.01.2020 10:33:22
Markus
Hallo Werner,
danke für deine Antwort.
Ja, genau - will nach der DropDown-Auswahl der ComboBox ("aa","bb","cc" ...) dann das Makro "Kopieren" mit der getroffenen Auswahl durch einen CommandButton auf der UserForm ausführen.
Danke für deine Hilfe.
AW: Wert ComboBox in Macro einfügen
08.01.2020 10:57:48
Werner
Hallo Markus,
Code im Codemodul der Userform:
Option Explicit
Private Sub CommandButton1_Click()
Dim wb As Workbook, ws_Quelle As Worksheet
If Me.ComboBox1.ListIndex > -1 Then
Set wb = ThisWorkbook
Set ws_Quelle = ThisWorkbook.Worksheets(ComboBox1.Text)
Call Kopieren(ws_Quelle)
Else
MsgBox "Fehler: Es ist kein Tabellenblatt gewählt."
End If
End Sub
Private Sub UserForm_Initialize()
Me.ComboBox1.AddItem "aa"
Me.ComboBox1.AddItem "bb"
Me.ComboBox1.AddItem "cc"
End Sub
Code in allgemeinen Modul:
Public Sub Kopieren(ws_Quelle As Worksheet)
Dim wb_quelle As Workbook, wb_ziel As Workbook
Dim ws_ziel As Worksheet
On Error Resume Next
Set wb_ziel = Workbooks("xyz")
On Error GoTo 1
If wb_ziel Is Nothing Then
Workbooks.Open ("\\ ......\xyz.xlsm")
End If
1
Set wb_quelle = ThisWorkbook
Set ws_ziel = Workbooks("xyz.xlsm").Worksheets("zieltabelle")
Application.ScreenUpdating = False
i = ws_ziel.Range("A1000").End(xlUp).Row + 1
If ws_Quelle.Range("B2") = "September" Then
ws_ziel("A" & i).Value = ws_Quelle.Range("C2").Value
ws_ziel("E" & i).Value = ws_Quelle.Range("D2").Value
ws_ziel("F" & i).Value = ws_Quelle.Range("G2").Value
Else
GoTo 0
End If
i = i + 1
0
MsgBox ("Datenübertragung ausgeführt")
End Sub
Gruß Werner
Anzeige
AW: Wert ComboBox in Macro einfügen
08.01.2020 14:31:08
Markus
Vielen Dank Werner! Danke für deine tolle Hilfe :)
Gerne u. Danke für die Rückmeldung. o.w.T.
08.01.2020 14:34:17
Werner
AW: Wert ComboBox in Macro einfügen
07.01.2020 18:05:45
Nepumuk
Hallo Markus,
ein Beispiel:
Option Explicit

Private Sub ComboBox1_Click()
    Set wb = ThisWorkbook
    Set ws = ThisWorkbook.Worksheets(ComboBox1.Text)
End Sub

Private Sub UserForm_Initialize()
    With ComboBox1
        .AddItem "aa"
        .AddItem "bb"
        .AddItem "cc"
    End With
End Sub

Gruß
Nepumuk
Anzeige
Variablendeklaration vergessen. o.w.T.
07.01.2020 18:17:18
Werner

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige