Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
932to936
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
932to936
932to936
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Bestimmten Zellenbereich verschieben

Bestimmten Zellenbereich verschieben
11.12.2007 18:21:00
Erwin
Hallo Excel-Experten,
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

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bestimmten Zellenbereich verschieben
11.12.2007 19:12:09
fcs
Hallo Erwin,
in diesem fall muss du zuerst die Zellen in den Spalten 6 bis 10 nach rechts verschieben durch Einfügen von Leerzellen.
Anschließend die Inhalte in Spalten 1 bis 5 ausschneiden und in den neuen Leerzellen einfügen.
Gruß
Franz

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, 6), Cells(rng.Row, 10)).Insert Shift:=xlToRight
Range(Cells(rng.Row, 1), Cells(rng.Row, 5)).Cut Destination:=Cells(rng.Row, 6)
End If
Next
End Sub


Anzeige
AW: Bestimmten Zellenbereich verschieben
11.12.2007 19:55:38
Erwin
Hallo Franz,
wahnsinn, da spiel ich mich den ganzen Tag und Ihr Experten schüttelt es so aus dem Ärmel, als sei es eine "Allerweltsformel".
Ich danke Dir und wünsche noch einen schönen Abend
Schöne Grüße
Erwin

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige