Hallo,
du könntest ungefähr so arbeiten (Userform mit Combobox1 und CommandButton1):
Option Explicit
Private Sub CommandButton1_Click()
If ComboBox1.ListIndex = -1 Then
MsgBox "Standortwahl fehlt"
Else
MsgBox "Eine E-Mail an " & ComboBox1.List(ComboBox1.ListIndex, 1)
End If
End Sub
Private Sub UserForm_Initialize()
'Combobox Eigenschaften (beide kann man auch im Eigenschaftenfenster einstellen)
ComboBox1.ColumnCount = 2 'zwei Spalten für: Standort, E-Mail
ComboBox1.ColumnWidths = "-1;0" 'erste Spalte automatische Breite, zweite Spalte wird nicht angezeigt
'Combobox fuellen
Call fuelleCombo
End Sub
Private Sub fuelleCombo()
Dim Standort As Variant
Dim EMailStandort As Variant
Dim i As Long
Standort = Split("Standort A,Standort B,Standort C,Standort D,Standort E", ",")
EMailStandort = Split("A@example.com,b@example.com,c@example.com,d@example.com,e@example.com", ",")
With ComboBox1
For i = 0 To UBound(Standort)
.AddItem Standort(i) 'in Spalte 0 den Standort
.List(.ListCount - 1, 1) = EMailStandort(i) 'in Spalte 1 die E-Mail
Next
End With
End Sub
Ist nur so eien Idee von mir:
Man kann in einer Combobox auch mehrere Spalten haben. Ich schreibe jetzt in die erste Spalte die Standorte und in die zweite Spalte die E-Mailadressen. Somit ist immer klar, welche E-Mailadresse zu welchem Standort gehört.
Mit der Zeile
ComboBox1.ColumnWidths = "-1;0"
blende ich die Spalte mit den E-Mailadressen aus.Wenn du diese Zeile auskommentierst, dann werden dir beide Spalten angezeigt.
Statt der MsgBox nimmst du einfach deinen Code, mit dem du die E-Mails versendest.
|