trotz Suche in den Archivlisten habe ich zu meinem Problem noch keine Lösung gefunden.
Ich möchte einer Liste von Lieferantennummern in Spalte A mittels VBA (vlookup?) von einer anderen Tabelle in Spalte B die Lieferantennamen zuordnen. Wird dort nichts gefunden, sollen die Werte aus einer anderen Tabelle gelesen werden.
Leider liest mein Makro aber die Daten von der anderen Tabelle nicht:
Private Sub CommandButton1_Click()
Dim i As Integer
Dim x1 As Byte
Dim x2 As Integer
On Error Resume Next
x1 = Range("a1").Row
x2 = Range("a2").End(xlDown).Row
Range("B1").Activate
For i = x1 To x2
' ActiveCell.ClearContents 'eventuell ausschalten!
If WorksheetFunction.IsNA(WorksheetFunction.VLookup(Cells(i, 1), Worksheets("Tabelle1") _
.Range("D:E"), 2, False)) = True Then
Cells(i, 2) = WorksheetFunction.VLookup(Cells(i, 1), Worksheets("Tabelle2").Range(" _
A:B"), 2, False)
Else
Cells(i, 2) = WorksheetFunction.VLookup(Cells(i, 1), Worksheets("Tabelle1").Range(" _
D:E"), 2, False)
End If
ActiveCell.Offset(1, 0).Select
Next i
End Sub
Möglicherweise ist diese Problemstellung für meine ersten VBA-Gehversuche zu komplex. Vielleicht hat aber schon mal jemand so etwas gemacht und kann mir ein Beispiel zur Verfügung stellen?
Per excel-Formel ginge das so:
=WENN(ISTNV(SVERWEIS(A1;Tabelle1'!D:E;2;FALSCH))=WAHR;SVERWEIS(A1;'Tabelle2'!A:B;2;FALSCH);SVERWEIS(A1;'Tabelle1'!A:B;2;FALSCH))
Danke!
Stefan