Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1172to1176
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
Inhaltsverzeichnis

Zwei komplette Zeilen tauschen

Zwei komplette Zeilen tauschen
Andreas
Hallo Excel Freunde,
so zum Einstieg in den Tag dachte ich mir einen kleinen Code zu erstellen… Daraus ist nun etwas länger geworden und ich komme nicht drauf. Auch eine Suche im Forum hat nichts Passendes ergeben. Ich möchte gern zwei komplette Zeilen vertauschen. Die Selection kann eine ganze Zeile oder nur eine einzelne Zelle in einer Zeile sein (wird über .EntireRow gesetzt). Zeile1 an Position von Zeile2 und umgekehrt. Aber mein Vorgehen über .Cut/ :Insert Shift:=xlDown liefert mir den Debugger. Die Markierung ist ungültig. Mir scheint der Code aber plausibel. Im Forum und bei Google habe ich nur Einträge zum Thema Zeilen/ Spalten tauschen gefunden. Aber transponieren will ich nicht.
Vielleicht fällt jemandem im Forum als „Aufwärmer“ für diesen Tag auf, warum der Code nicht wie gewünscht agiert. Ich freue mich über jede Anregung! Danke.
Sub ZeilenTauschenV2()
Dim clCells1 As Range
Dim clCells2 As Range
With Selection
Set clCells1 = .Cells(1, 1)
Set clCells2 = .Cells(1, 1)
clCells1.EntireRow.Cut
clCells2.EntireRow.Insert shift:=xlDown
clCells2.EntireRow.Cut
clCells1.EntireRow.Insert shift:=xlDown
End With
End Sub
Viele Grüße, Andreas Hanisch

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

Betreff
Benutzer
Anzeige
AW: Zwei komplette Zeilen tauschen
25.08.2010 11:20:43
Rudi
Hallo,
die Ranges verschieben sich.
Sub Zeilen_tauschen()
If ActiveWorkbook Is Nothing Then Exit Sub
Application.ScreenUpdating = False
Dim Zeile(2)
Select Case Selection.Areas.Count
Case 1
If Selection.Rows.Count = 2 Then
Zeile(1) = Selection.Cells(1).Row
Zeile(2) = Selection.Cells(2).Row
Else
MsgBox "ungültige Markierung!", , "Gebe bekannt..."
Exit Sub
End If
Case 2
Zeile(1) = Selection.Areas(1).Row
Zeile(2) = Selection.Areas(2).Row
Case Else
MsgBox "ungültige Markierung!", , "Gebe bekannt..."
Exit Sub
End Select
If Zeile(1) > Zeile(2) Then
Zeile(0) = Zeile(1)
Zeile(1) = Zeile(2)
Zeile(2) = Zeile(0)
End If
Rows(Zeile(1)).Cut
Rows(Zeile(2) + 1).Insert
If Zeile(2) > Zeile(1) + 1 Then
Rows(Zeile(2) - 1).Cut
Rows(Zeile(1)).Insert shift:=xlDown
End If
Application.ScreenUpdating = True
End Sub

Gruß
Rudi
Anzeige
AW: Zwei komplette Zeilen tauschen
26.08.2010 20:03:25
Andreas
Hallo Rudi,
meine Herren... Der Code ist doch umfangreicher notwendig, als ich dachte! Ich habe ihn gerade getestet. Hammer wie das funktioniert!
Vielen, vielen Dank.
Habe noch einen schönen Abend, Grüße,
Andreas Hanisch

9 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige