ich habe gestern hier angefragt ob jemand zu meinem Problem eine Lösung hat:
Ich habe eine größere Excel-Tabelle, in der in Spalte A mehrere verschiedene Namen/Begriffe stehen. Jetzt möchte ich eine Schleife erstellen, die alle Einträge in Spalte A mit Montag, Dienstag und Mittwoch bis 5 Zellen rechts davon bis zur Spalte E markieren, ausschneiden und in derselben Zeile bei Spalte F wieder einfügen. Praktisch die gesamten Zellen um 6 Spalten verschieben.
Paulchen hat mir sehr schnell ein tolle Lösung geschickt, die auch super funktioniert:
Sub verschieben()
Dim rng As Range
Dim ALetzte As Long
'## Letzte nichtleere Zelle in Spalte A ermitteln
ALetzte = IIf(IsEmpty(Range("A65536")), Range("A65536").End(xlUp).Row, 65536)
'## Einträge verschieben
For Each rng In Sheets("Tabelle1").Range("A1:A" & ALetzte)
If rng = "Montag" Or rng = "Dienstag" Or rng = "Mittwoch" Then Range(Cells(rng.Row, 1), _
Cells(rng.Row, 5)).Insert Shift:=xlToRight
Next
End Sub
Das Problem, das ich nun habe ist dies, dass ich auch Tabellen habe, in denen ich 8 Zellen bis Spalte H markieren und ausschneiden, aber bereits in Spalte F, also in der 6 Zelle einfügen muss. Und da geht die letzte Zeile Cells(rng.Row, 5)).Insert Shift:=xlToRight nicht mehr und ich bekomms einfach nicht hin!
Kann mir jemand helfen?
Wäre super!!!!
Schöne Grüße
Erwin