Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1088to1092
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
Art Sverweis in Textboxen einer Userform
Kay
Hallo,
dachte ich hätte schon mal gefragt, konnte es aber nicht im Archiv finden...daher jetzt erneut/oder erstmalig ;o)
Habe eine Userform mit Textbox 1 = PLZ und Textbox2 = Ort sowie eine Tabelle wo alle PLZ mit Ort hinterlegt sind (Spalte A & B). Nun gibt halt der User in Textbox 1 eine PLZ ein - so soll in Textbox 2 der Ort zugeordnet werden (Art Sverweis)...aber wie geht das ? Meine VBA-Kenntnisse reichen da noch nicht so aus...
Gruß und Danke !
Kay

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Art Sverweis in Textboxen einer Userform
19.07.2009 22:51:43
Josef
Hallo Kay,
vom Prinzip her, geht das so.
Private Sub TextBox1_Change()
  Dim varRes As Variant
  
  varRes = Application.Match(TextBox1, Sheets("Tabelle2").Range("A2:A1000"), 0)
  
  If IsNumeric(varRes) Then
    TextBox2 = Application.Index(Sheets("Tabelle2").Range("B2:B1000"), varRes)
  Else
    TextBox2 = ""
  End If
End Sub

Gruß Sepp

Anzeige
AW: Art Sverweis in Textboxen einer Userform
19.07.2009 23:30:21
Andre´
Hallo Sepp,
habe es auch probiert
bei mir wird im Lokalfenster:
: varRes : Fehler 2042 : Variant/Error
angezeigt.
Was muss geändert werden.
Vielen Dank im Voraus!
MFG Andre
PLZ-Match mit Text oder Zahl?
20.07.2009 00:02:46
Erich
Hi zusammen,
vermutlich sind die PLZ in der Tabelle als Zahlen gespeichert, oder?
Dann wird keine PLZ gefunden, die in der Textbox (natürlich) als Text eingegeben wurde.
Application.Match(CDbl(TextBox1), ...
statt
Application.Match(TextBox1,
könnte schon helfen.
Mein Code-Vorschlag (mit AfterUpdate statt Change, aber das ist Geschmackssache...):

Private Sub TextBox1_AfterUpdate()
Dim varRes As Variant
If IsNumeric(TextBox1) Then
With Sheets("Tabelle2")
varRes = Application.Match(CDbl(TextBox1), .Range("A2:A1000"), 0)
If IsNumeric(varRes) Then
TextBox2 = Application.Index(.Range("B2:B1000"), varRes)
Else
TextBox2 = "PLZ '" & TextBox1 & "' nicht gefunden"
End If
End With
Else
TextBox2 = "Falsche Eingabe"
End If
End Sub
Besser wäre es aber vermutlich, die PLZ als Texte in der Tabelle zu speichern.
(siehe bei Wikipedia: http://de.wikipedia.org/wiki/Postleitzahl#Postleitzahlen_in_der_Datenverarbeitung )
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: PLZ-Match mit Text oder Zahl?
20.07.2009 00:27:18
Andre´
Hallo Erich,
hatte schon Textformat, allerdings hatte ich keine führende Null vergeben.
Jetzt funktioniert es, auch Dein Vorschlag.
Vielen Dank!
MFG Andre
AW: PLZ-Match mit Text oder Zahl?
20.07.2009 13:40:24
k
Hi, habe den Code ausprobiert - passt super ! Vielen Dank - damit wird meine Userform immer einfacher von der Bedienung und die ADMs haben bald richtig Spass mit Excel ;o)
Gruß
Kay

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige