Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1496to1500
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

S-Verweis in VBA?

S-Verweis in VBA?
05.06.2016 14:47:00
Aaron

Hallo zusammen,
für eine Erfassungsliste von Kundendaten hatte ich bisher durch einen S-Verweis den Ort durch die Postleitzahl ermittelt.
Jetzt habe ich das ganze Formular auf eine Userform umgebaut, hänge aber an der Übernahme des S-Verweis in einen VBA-Code.
Die Postleitzahlen liegen im Tabellenblatt Postleitzahlen in der Spalte "A".
Die dazugehörigen Orte im selben Blatt in der Spalte "B".
Ein erster Versuch mit folgendem Code war bisher leider vergeblich.
Es hat mir immer die MsgBox ausgeworfen, trotz korrekter Postleitzahl.

Private Sub Anfrageliste_08_TextBox_Enter()
Dim Letzte As Long
Dim zipcount As Long
Dim strPath As String
strPath = ThisWorkbook.Path
'Letzte Zeile bestimmen:
Letzte = Sheets("Postleitzahlen").Cells(Rows.Count, 1).End(xlUp).Row + 1
'PLZ & Ort Suche
For zipcount = 2 To Letzte
If Anfrageliste_07_TextBox.Value = Sheets("Postleitzahlen").Cells(zipcount, 1) Then
Anfrageliste_08_TextBox.Value = Sheets("Postleitzahlen").Cells(zipcount, 2)
Exit Sub
End If
Next zipcount
MsgBox "Die eingegebene Postleitzahl wurde nicht gefunden, bitte die Eingabe überprüfen."
End Sub
Leider sind meine VBA-Kenntnisse noch nicht so fundiert, dass ich hier eine Lösung sehe.
Ich freue mich über Hilfe und Rückmeldung.
Vielen Dank im Voraus.

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

Betreff
Datum
Anwender
Anzeige
AW: S-Verweis in VBA?
05.06.2016 14:50:30
Hajo_Zi
ich würde vermuten Du Vergleich Text (TextBox) mit einer Zahl.
Ich baue keine Datei nach die Zeit hat schon jemand Investiert.
Ich hätte ja find benutzt da Postleitzahl nur einmal bei Dir vorkommt.

AW: S-Verweis in VBA?
05.06.2016 16:12:26
Piet
Hallo Aaron,
UserFormen haben so ihre Tücken, eine davon hat ja Hajo korrekt beschrieben.
Mir ist aber noch etwas aufgefallen und zwar das hier:
Private Sub Anfrageliste_08_TextBox_Enter
Eine Heimtücke mit der ich bei der Aufbau einer Datenbank für eine Anfrage zu kaempfen hatte war:
ein klassischer logischer Denkfehler - wie Excel funktionieren sollte! Das schert sich nicht darum!
Beim arbeiten mit TextBox hatte ich den gleichen Effekt, keinen Wert in der Variablen. Das machte mich
so naerrisch, das ich alles ausprobierte, von - Enter, Change bis zu Exit. Siehe da - Exit funktionierte!!
MS sieht die Sache offenbar so: - mit Enter erwartet die TextBox eine Eingabe zum Vorladen!
Erst bei Exit wird die Variable aus der TextBox übernommen. So hane ich es verstanden!!
Probier mal -Exit- aus. Würde mich freuen wenn es dann klappt
mfg Piet

Anzeige
AW: S-Verweis in VBA?
05.06.2016 17:09:15
Werner
Hallo Aaron,
Textbox-Zahl (in einer TextBox steht immer Text) in Zahl wandeln
If Clng(Anfrageliste_07_TextBox).Value = Sheets("Postleitzahlen").Cells(zipcount, 1) Then
Gruß Werner

AW: S-Verweis in VBA?
05.06.2016 21:31:00
Aaron
Hallo zusammen,
vielen Dank für eure schnellen Rückmeldungen.
Ich habe versucht, die drei Lösungen umzusetzen, leider stoßen ich aber bei allen auf kein Ergebnis.
Das Format meines Registerblattes mit den PLZ und Orten auf Text, bzw. Zahl geändert, jedoch ohne Erfolg.
Probier mal -Exit- aus. Würde mich freuen wenn es dann klappt
Hier erhalte ich noch im Code eine Fehlermeldung:
Fehler beim Kompilieren:
Deklaration der Prozedur entspricht nicht der Beschreibung eines Ereignisses oder einer Prozedur mit demselben Namen
Beim Einfügen deiner überarbeiteten Zeile Werner erhalte ich in der Userform einen Syntaxfehler.
Nach dem Teil "_TextBox)" wird bei ".Value" ein Then oder GoTo erwartet?
Sorry, aber da komme ich leider selbst nicht weiter.
Könnt ihr mir hier bitte noch einmal helfen?

Anzeige
AW: S-Verweis in VBA?
05.06.2016 22:10:34
Werner
Hallo Aaron,
lass das .Value mal weg.
Ansonsten stell mal die Datei hier rein.
Gruß Werner

AW: S-Verweis in VBA?
05.06.2016 22:30:12
Aaron
Hallo Werner,
klasse, vielen Dank! :)
Das bringt mich meiner Lösung ein gutes Stück weiter.
Allerdings erhalte ich jetzt - wenn das Feld leer bleibt - einen Laufzeitfehler.
Als Laie geschätzt würde ich hier nochmal eine If-Schleife dazwischen einbauen.
Aber wie? oder liege ich komplett falsch?
Gerne nehme ich dein Angebot an und stelle die Datei, bzw. den betroffenen Teil, online:
https://www.herber.de/bbs/user/106006.xlsm
Für den Datei-Upload habe ich nur die ersten 100 Postleitzahlen stehen lassen und die anderen Codes der Felder - dem Datenschutz geschuldet - gelöscht.
Noch einmal vielen Dank im Voraus für deine Unterstützung.

Anzeige
AW: S-Verweis in VBA?
05.06.2016 23:08:14
Werner
Hallo Aaron,
If Anfrageliste_07_TextBox <> "" Then
If CDbl(Anfrageliste_07_TextBox) = Sheets("Postleitzahlen").Cells(zipcount, 1) Then
Das zusätzliche End If nicht vergessen.
Gruß Werner

AW: S-Verweis in VBA?
05.06.2016 23:38:11
Aaron
Hallo Werner,
das ist genial! :)
Vielen Dank.
Es funktioniert hervorragend:)
Ich wünsche einen schönen Abend.
Gruß
Aaron

AW: Gerne und danke für die Rückmeldung. o.w.T.
06.06.2016 00:25:21
Werner

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige