Laufzetfehler in VLookup Zeile

Bild

Betrifft: Laufzetfehler in VLookup Zeile
von: Peter Weber
Geschrieben am: 09.10.2015 21:07:22

Hallo Zusammen,
ich bitte um Eure Hilfe. Ich erhalte einen Laufzeitfehler 1004 in der Vlookup Zeile.
Könntet ihr mir bitte bei der Syntax helfen.

With Sheets("Tabelle1")
   lz1 = .Cells(Rows.Count, 2).End(xlUp).Row                'letzte Zeile In Tabelle 1  _
bestimmen
   lz2 = Cells(Rows.Count, 2).End(xlUp).Row                'letzte Zeile bestimmen
   lz3 = Cells(Rows.Count, 3).End(xlUp).Row                'letzte Zeile bestimmen
    For i = lz3 + 1 To lz2
    Cells(lz3 + 1, 3) = Application.WorksheetFunction.VLookup(Cells(lz3 + 1, 2).Range(.Cells(7,  _
2), .Cells(lz1, 3)), 2, 0)
    Next i
End With
Danke und LG,
Peter

Bild

Betrifft: AW: Laufzetfehler in VLookup Zeile
von: Hajo_Zi
Geschrieben am: 09.10.2015 21:16:32
Hallo Peter,
fehlt da nicht ein Komma nach dem ersten Cells()?


Bild

Betrifft: AW: Laufzetfehler in VLookup Zeile
von: Peter Weber
Geschrieben am: 09.10.2015 21:41:35
Hallo Hajo,
ja das wars,
danke
LG, Peter

Bild

Betrifft: AW: Laufzetfehler in VLookup Zeile
von: Daniel
Geschrieben am: 09.10.2015 22:07:04
Hi
meiner Erfahrung nach ist es besser, wenn du anstatt mit einer Schleife über alle Zellen zu laufen per Makro die Formel in die Zellen einträgst und dann die Formel durch ihre Werte ersetzt.
Das ist in der Regel schneller und hat beim Testen im Einzelstep, dass du dich nicht durch die Schleife durchtickern oder mit Stoppern arbeiten musst.

lz1 = Sheets("Tabelle1").Cells(Rows.Count, 2).End(xlUp).Row
lz2 = Cells(Rows.Count, 2).End(xlUp).Row
lz3 = Cells(Rows.Count, 3).End(xlUp).Row
With Range(Cells(lz3 + 1, 3), Cells(lz2, 2))
    .FormulaR1C1 = "=VLookUp(RC[-1],Tabelle1!R7C2:R" & lz1 & "C3,2,0)"
    .Formula = .Value
End With
Gruß Daniel

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Tabellenblatt abhängig vom benutzten PC speichen"