folgendes Makro funktioniert wunderbar, dank eurer tatkräftigen Unterstützung.
Der Nutzer gibt bspw in A5 einen Ort ein, wenn nur 1 Adresse da ist, wird die in B5 gleich eingetragen, wenn mehrere Adresse vorhanden, kann der Nutzer eine über die UserForm durch Doppelklick auswählen, und der Eintrag wird ebenfalls in B5 übernommen.
Was noch notwendig wäre: In Spalte B kann der User beliebig manuell was eintragen, und das möchte ich unterbinden.
Die Daten, mit der die Userform über das Makro befüllt werden, stehen im Blatt Datengültigkeit in einem Bereich B8:H14.
Danke für die Hilfe Gruß G
Private Sub Worksheet_Change(ByVal Target As Range)
Dim z, s, Ort, found
z = Target.Row
s = Target.Column
If z 100000 Or s 1 Then Exit Sub 'verhindert, dass beim Anklicken oberhalb _
12 was passiert
If Target.Cells.Count 1 Then Exit Sub
Application.EnableEvents = False
Ort = Target
UserForm1.ListBox1.Clear
With Sheets("Datengültigkeit") 'hier stehen die Adressen
For ze = 8 To 15
If .Cells(ze, 2) = Ort Then
For s = 3 To 10 'bis zu xx Adressen möglich
If .Cells(ze, s) "" Then
found = found + 1
UserForm1.ListBox1.AddItem .Cells(ze, s) 'über die Variablen wird die _
ListBox angesprochen
Strasse = .Cells(ze, s)
End If
Next s
Exit For
End If
Next ze
If found > 1 Then
UserForm1.Show
End If
Cells(z, 2) = Strasse
End With
Application.EnableEvents = True
End Sub