ich habe folgendes Problem:
Es gibt eine große Liste mit Datensätzen in den Spalten
A: PLZ; B: Ortsname; C-E: weitere Ortsbezogene Attribute
Ein anderes Tabellenblatt dient als eine Art Eingabemaske (z.B. B2:Ortsname, B3:KFZ, B4:PLZ), _ in welcher der via Dropdown-Liste einen Ortsnamen auswählen kann und dann die PLZ sowie die weiteren Attribute automatisch ergänzt werden. Leider gibt es mehrdeutige Ortsnamen (z.B. Neustadt) bei denen mein Code nur den erste Datensatz ausgibt. Hier bräuchte ich Hilfe um einen VBA-Code zu entwickeln, welcher bei mehrdeutigen Ortsnamen den User zur Eingabe der PLZ auffordert.
Public Sub vba_getGmdePLZ()
If Worksheets("Eingabemaske").Range("B5") = "" Or _
Worksheets("Eingabemaske").Range("B5") = "" Then
Worksheets("Eingabemaske").Range("B5") = WorksheetFunction.Index(Sheets("GMDE_PLZ"). _
Columns(1), WorksheetFunction.Match(Worksheets("Eingabemaske").Range("B3"), Sheets("GMDE_PLZ"). _
_
Columns(2), 0))
End If
End Sub
Public Sub vba_getGmdeKfz()
strGdePLZ = Worksheets("Eingabemaske").Range("B5")
strLkrKey = Left(strGdeKey, 5)
If Worksheets("Eingabemaske").Range("B4") = "" Or _
Worksheets("Eingabemaske").Range("B4") = "" Then
Worksheets("Eingabemaske").Range("B4") = WorksheetFunction.VLookup(strGdePLZ, Sheets(" _
_
_
GMDE_PLZ").[A2:C2500], 3, False)
End If
End Sub
usw.
Die einzelnen Subprozedoren werden dann natürlich in einer Übergeordneten verknüpft.
Ich hoffe, dass ich mich einigermaßen verständlich ausdrücken konnte. Vielen Dank!
Gruß Kai