Hi,
achtest du denn auch brav darauf, den Zielbereich vor jedem Makrodurchlauf zu löschen?
With Worksheets("Erfassung")
.Range(.Cells(Z, s).Offset(1, 1), .Cells(.Cells(.Rows.Count, s).End(xlUp).Row, .Cells(Z, .Columns.Count).End(xlToLeft).Column)).ClearContents
End With
Sonst können da noch Xe zu Daten stehen, die in deiner Datenquelle schon lange nicht mehr vorkommen.
Was machst du, wenn in der Datenquelle ein Auftrags- oder AG-Wert steht, der in deiner Zieltabelle noch nicht erfasst ist? Dann erhältst du einen Laufzeitfehler, weil die Find-Funktion keine Zelle findet. Falls du diesen mit On Error übergehst, wird für Zeile bzw. Spalte der vorherige Wert verwendet.
Bist du sicher, dass deine Daten in der Zieltabelle unique sind? Oder kann es auch Dopplungen geben? In dem Fall findet Find immer den erstbesten Treffer.
Gruß Mr. K.
|