Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1092to1096
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

Spalteninhalte verschieben

Spalteninhalte verschieben
Lemmi
Hallo zusammen,
ich möchte Datenspalten um jeweils eine Spalte nach rechts oder nach links verschieben!
Wenn ich nun eine Spalte bzw. eine Zelle markiert oder aktiviert ist und ein Butten Drücke (Pfeil rechts oder nach links) so sollen die Zeileninhalte um 1 Spalte nach rechts oder nach links verschoben werden!
Die Inhalte der daneben liegenden Spalten sollen dann um eben eine Spalte nach recht oder links verschoben werden! Die Spalteninhalte sind damit vertausch worden!
Dies soll ohne zusätzlichen Abfragen durchgeführt werden!
Die Zeilen 1- 6 bleiben von tauschen unberührt. Damit wird nur der Inhalt ab Zeile 6 bis letzte Zeile getauscht!
Sollen mehrere Spalten / Zellen markiert sein so werden alle markierten Zeilen im Block um 1 Spalte verschoben .
Gruß
Lemmi
P.s: Diese Funktion hat mir Daniel gesten mit Zeilen umgesetzt.

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: schau mal hier ...
12.08.2009 18:07:44
Lemmi
Hallo Mattias,
leider werden die Formate und die Berechnungen nicht mitgenommen!
... ich benötige es mit allen Berechnungen und Formaten!
Daniel hat mir für die Variante Zeilen verschieben folgendes gegeben!
Sub Zeilen_verschieben_nach_oben()
'verschieb die Zelleninhalte der markierten Zeile/ Zelle nach oben ; ab SpalteC
With Intersect(Selection.EntireRow, Range("C:IV"))
.Cut
.Cells(1, 1).Offset(-1, 0).Insert shift:=xlDown
Selection.Offset(-1, 0).Select
End With
End Sub

Sub Zeilen_verschieben_nach_unten()
'verschieb die Zelleninhalte der markierten Zeile/ Zelle nach unten ; ab SpalteC
With Intersect(Selection.EntireRow, Range("C:IV"))
.Cut
.Cells(1, 1).Offset(.Rows.Count + 1, 0).Insert shift:=xlDown
Selection.Offset(1, 0).Select
End With
End Sub
Kann man dies vielleicht anpassen?
Gruß
Lemmi
Anzeige
Lemmi... ? ...Lenni
12.08.2009 22:48:13
Lenni
Moin Matthias! ...Du alte Nase!! :-)))
Der Beitrag ist doch von   LEMMI   und nicht von   MIR   ...und ich bin Lenni (...der aus dem hohen Norden!)
Ab Sonntag für 2 Wochen wirklich im HOHEN Norden:   Norwegen !!!  
Viele Grüße aus dem hohen Norden!
Lenni

Anzeige
@ Lenni - ja, ich habs schon bemerkt ...
13.08.2009 04:06:54
Matthias
Hallo Lenni
... und sorry wg. der Verwechslung
Da Lemmi nicht reagiert hat, wußte ich das Du es nicht bist
Ich grüße Dich
und wünsche Dir zwei wunderschöne Wochen.
Matthias
AW: also die Formate gehen schon mit ...
13.08.2009 22:45:25
Lemmi
Hallo Matthias,
es geht mir nicht um Daniel's Code der für das verschieben nach unten oder oben funktioniert!
Ich meinte eigentlich Deinen link zu Josef Code!
Hier ist es so das das Format nicht mitgenommen werden und die Zellen- Berechnungen nicht übernommen werden!
Gruß
Lemmi
AW: schau mal hier ...
12.08.2009 18:52:32
Daniel
hi
im prinzip brauchst du doch nur die Zeilen gegen Spalten tauschen, dh. aus ".entireRow" wird ".entireColum", aus "Range("C:IV")" wird Range("7:65536") und aus ".Offset(-1,0)" wird ".Offset(0,-1)" und aus ".rows.count" wird ".Columns.Count"
versuche, die Funktionsweise des Makros zu verstehen und probier auch mal selber was aus.
Gruß, Daniel
Anzeige
AW: schau mal hier ...
12.08.2009 20:53:09
Lemmi
Hallo Daniel,
....nun gut, habe es mal versucht !
Leider schreibt dieses Makro einen Fehler!
Laufzeitfehler ..
Objekt unterstützt diese Eigenschaft oder Methode nicht!
Was habe ich Falsch gemacht?
Sub Zeilen_verschieben_nach_rechts()
With Intersect(Selection.EntireColum, Range("7:65536"))
.Cut
.Cells(1, 1).Offset(0, -1).Insert shift:=xlDown
Selection.Offset(0, -1).Select
End With
End Sub
Sub Zeilen_verschieben_nach_links()
With Intersect(Selection.EntireColum, Range("7:65536"))
.Cut
.Cells(1, 1).Offset(.Columns.Count + 0, 1).Insert shift:=xlDown
Selection.Offset(0, 1).Select
End With
End Sub

Gruß
Lemmi
Anzeige
AW: schau mal hier ...
12.08.2009 20:55:45
Lemmi
... sollte natürlich heißen Spalten verschieben!
Hallo Daniel,
....nun gut, habe es mal versucht !
Leider schreibt dieses Makro einen Fehler!
Laufzeitfehler ..
Objekt unterstützt diese Eigenschaft oder Methode nicht!
Was habe ich Falsch gemacht?
Sub Spalten_verschieben_nach_rechts()
With Intersect(Selection.EntireColum, Range("7:65536"))
.Cut
.Cells(1, 1).Offset(0, -1).Insert shift:=xlDown
Selection.Offset(0, -1).Select
End With
End Sub

Sub Spalten_verschieben_nach_links()
With Intersect(Selection.EntireColum, Range("7:65536"))
.Cut
.Cells(1, 1).Offset(.Columns.Count + 0, 1).Insert shift:=xlDown
Selection.Offset(0, 1).Select
End With
End Sub

Gruß
Lemmi
Anzeige
AW: tippfehler
12.08.2009 21:04:17
Daniel
Hi
es heist Column, nicht Colum
und das Insert shift:=xldown würde ich mir auch mal überlegen, ob das beim Verschieben von Spalten Sinn macht, oder ob da nicht was anderes rein muss.
im Zweifel kannst du ja auch mal den Makrorecorder befragen.
Gruß, Daniel
AW: tippfehler
12.08.2009 21:51:54
Lemmi
Hallo Daniel,
Teil 1 funktiuniert mit (..wie Makro- Aufzeichnung)
Sub Zeilen_verschieben_nach_links()
With Intersect(Selection.EntireColumn, Range("7:65536"))
.Cut
.Cells(1, 1).Offset(0, -1).Insert 'shift:=xlDown   entfällt
Selection.Offset(0, -1).Select
End With
End Sub
TEil 2 ist immer noch mit Fehlermeldung!!!
Sub Zeilen_verschieben_nach_rechts()
With Intersect(Selection.EntireColumn, Range("7:65536"))
.Cut
.Cells(1, 1).Offset(.Columns.Count + 0, 1).Insert 'shift:=xlDown
Selection.Offset(0, 1).Select
End With
End Sub
Gruß
Lemmi
Anzeige
AW: tippfehler
12.08.2009 22:15:29
Daniel
Hi
nachdenken, wo stehen in den .Cells(x,y), .Offset(x,y) die Spalten?
an der Stelle des x oder an der Stelle des y, für was steht dann das andre und was willst du verschieben?
gruß, Daniel
AW: tippfehler
13.08.2009 22:33:57
Lemmi
Hallo Daniel,
leider muss ich da passen!
Da ich leider VBA so richtig kann benötige ich Deine Hilfe um den Code zuende zu bringen zu können!
Vielen Dank im Voraus!
Gruß
Lemmi

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige