11.01.2023, 17:05
Hallo,
ich habe ein Problem und finde irgendwie keine Lösung.
Ich habe eine Tabelle, an der in Spalte 14 immer Werte mit einem Komma stehen.
Per Makro suche ich diese Zeile und Excel soll mir die unter die bestehende Zeile kopieren.
Mit dem Makro:
Dim LR As Long, i As Long, A As Integer
Application.ScreenUpdating = False
With Sheets("Testblatt")
If .FilterMode Then .ShowAllData ' Autofilter alle
LR = .Cells(.Rows.Count, "B").End(xlUp).Row 'letzte Zeile der Spalte
For i = 2 To LR
If InStr(.Cells(i, 14), ",") > 0 Then
.Range(.Cells(i, 1), .Cells(i, 14)).Select
Selection.Copy
Selection.Insert Shift:=xlDown
End If
Next
End With
macht er es zwar, allerdings verdoppelt er mir dann immer wieder die gleiche Zeile.
Wo liegt der Fehler?
Natürlich bei mir, da das makro die Zeile 280 als erstes findet, die Zeile 280 als Zeile 281 einfügt, dann als nächstes die Zeile 281 findet, diese als Zeile 282 einfügt usw.
Er soll aber nach dem kopieren quasi einfach in der Liste weitersuchen und die nächste kopieren....
Viele Grüße
Andreas
ich habe ein Problem und finde irgendwie keine Lösung.
Ich habe eine Tabelle, an der in Spalte 14 immer Werte mit einem Komma stehen.
Per Makro suche ich diese Zeile und Excel soll mir die unter die bestehende Zeile kopieren.
Mit dem Makro:
Dim LR As Long, i As Long, A As Integer
Application.ScreenUpdating = False
With Sheets("Testblatt")
If .FilterMode Then .ShowAllData ' Autofilter alle
LR = .Cells(.Rows.Count, "B").End(xlUp).Row 'letzte Zeile der Spalte
For i = 2 To LR
If InStr(.Cells(i, 14), ",") > 0 Then
.Range(.Cells(i, 1), .Cells(i, 14)).Select
Selection.Copy
Selection.Insert Shift:=xlDown
End If
Next
End With
macht er es zwar, allerdings verdoppelt er mir dann immer wieder die gleiche Zeile.
Wo liegt der Fehler?
Natürlich bei mir, da das makro die Zeile 280 als erstes findet, die Zeile 280 als Zeile 281 einfügt, dann als nächstes die Zeile 281 findet, diese als Zeile 282 einfügt usw.
Er soll aber nach dem kopieren quasi einfach in der Liste weitersuchen und die nächste kopieren....
Viele Grüße
Andreas