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

VLookup - Fehlermeldung

VLookup - Fehlermeldung
KLE
Hallo,
...ich habe eine Datei, in der ich per VBA einen SVerweis ausführen möchte.
Dazu habe ich einen Bereich "Laender" per Set zugewiesen.
Nun soll der in Laender gesuchte Wert, wenn vorhanden - den passenden Eintrag der 2'ten Spalte und 3'ten Spalte aus Länder in meine Tabelle eintragen.
Dazu gehe ich 2x mit der VLOokup-Funktion vor.
Bei Fehler (wenn kein Treffer) soll in der Tabelle dann "" NICHTS eingetragen werden und er soll weiter suchen...
Hier mein Versuch, der beim 2'ten Lauf (Spalte3) mit einer Fehlermeldung endet:
On Error Resume Weiter
.cells(LZeile, 21) = Application.WorksheetFunction.VLookup(.Cells(LoZeileD, 11).Value, Laender, 2, 0)
Weiter: .cells(Lzeile, 21) = ""
On Error Resume Weiter2
.cells(LZeile, 22) = Application.WorksheetFunction.VLookup(.Cells(LoZeileD, 11).Value, Laender, 3, 0)
Weiter2: .cells(Lzeile, 22) = ""
Wie kann ich es besser (funktionsfähig) machen ?!?
Gruß und Danke
Kay

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: VLookup - Fehlermeldung
19.05.2011 14:06:32
Rudi
Hallo,
am besten ohne Worksheetfunction, On Error und GoTo.
If IsError(Application.VLookup(.Cells(LoZeileD, 11).Value, Laender, 2, 0)) Then
.Cells(LZeile,21) = ""
Else
.Cells(LZeile,21) = Application.VLookup(.Cells(LoZeileD, 11).Value, Laender, 2, 0)
End If

Gruß
Rudi
AW: VLookup - Fehlermeldung
19.05.2011 14:22:53
KLE
Danke Rudi ! Da mein Chef mich drängelte, habe es nach langem überlegen, parallel jetzt so gemacht:
z = Application.WorksheetFunction.CountIf(Laender, .Cells(LoZeileD, 11).Value)
If z 0 Then
.Cells(LoZeileD, 9).Value = Application.WorksheetFunction.VLookup(.Cells(LoZeileD, 11).Value, Laender, 2, 0) ' Main Region
.Cells(LoZeileD, 10).Value = Application.WorksheetFunction.VLookup(.Cells(LoZeileD, 11).Value, Laender, 3, 0) ' Sub Region
Else
.Cells(LoZeileD, 9).Value = ""
.Cells(LoZeileD, 10).Value = ""
End If
Werde aber Deine Version nachher noch probieren...vielen Dank für Deine Antwort!
Gruß
Kay
Anzeige

28 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige