in meinem Beitrag vom 30.12.09 zum Thema vlookup hatte mir Daniel den Vorschlag gemacht, vorhandene excel-Formeln mittels FormulaLocal in den VBA-Code einzusetzen. Er hatte folgendes Beispiel angeführt:
Sub Test()
With Range(Cells(1, 2), Cells(1,1).End(xldown).Offset(0,1))
.FormulaLocal = "=WENN(ISTNV(SVERWEIS(A1;Tabelle1'!D:E;2;FALSCH))=WAHR;SVERWEIS(A1;'Tabelle2'!A: B;2;FALSCH);SVERWEIS(A1;'Tabelle1'!A:B;2;FALSCH))"
.Formula = .Value
End With
End Sub
Jetzt verstehe ich nicht, was am Ende der ersten Zeile das .Offset(0,1) bedeutet. Könnte mir das bitte jemand kurz erläutern?
In einem Anderen Makro habe ich mal das .FormulaLocal ohne .Offset getestet und es scheint zu funktionieren:
Private Sub CommandButton2_Click()
Dim LastRow As Integer
LastRow = Range("a1").End(xlDown).Row
With Range(Cells(3, 3), Cells(LastRow, 3))
.FormulaLocal = "=WENN(ISTNV(VERGLEICH(A3;'Tabelle Daten'!A:A;0))=WAHR;0;1)"
.Formula = .Value
End With
End Sub
Könnte bitte mal jemand diesen Code anschauen und mir sagen, ob ich noch einen Gedankenfehler habe?
Danke und Gruß
Stefan