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

Verschieben von aktiver Zelle

Verschieben von aktiver Zelle
07.04.2016 11:41:20
aktiver
Guten Tag,
habe ein Anliegen, was bisher nicht gelöst ist.
Ganze Zeilen kann ich nach oben und nach unten verschieben.
Allerdings möchte ich noch die Möglichkeit haben aktive Zellen nach Rechts oder nach links zu verschieben. ( Aktive Zelle beinhaltet Wert, Formatierung und Bedingte Formatierungen)
Bsp:
Via Button ( Rechts ) und ( Links) möchte ich das sich die AKTIVE Zelle wenn sie ausgewählt wurde demensprechend nach links oder rechts verschieben lässt.
Die danebenliegende Zellen soll nicht überschrieben werden sondern ebenfalls nach rechts mitlaufen, samt Formatierungen, bedingte Formatierungen etc...
Hoffe Ihr habt einen Lösungsvorschlag.
Beste Grüße und vielen Dank.

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Verschieben von aktiver Zelle
07.04.2016 12:14:55
aktiver
Hallo
meinst du das so?

Sub Nach_links()
With Range(ActiveCell, ActiveCell.Offset(0, -1))
.Cut
.Offset(0, -1).Insert Shift:=xlToRight
End With
End Sub
Sub Nach_rechts()
With Range(ActiveCell, ActiveCell.Offset(0, 1))
.Cut
.Offset(0, 3).Insert Shift:=xlToRight
End With
End Sub
Sub Nach_oben()
With Range(ActiveCell, ActiveCell.Offset(-1, 0))
.Cut
.Offset(-1, 0).Insert Shift:=xlDown
End With
End Sub
Sub Nach_unten()
With Range(ActiveCell, ActiveCell.Offset(1, 0))
.Cut
.Offset(3, 0).Insert Shift:=xlDown
End With
End Sub
Gruß UweD

Anzeige
AW: Verschieben von aktiver Zelle
07.04.2016 12:15:26
aktiver
Hallo,
so?
Sub rechts()
ActiveCell.Insert xlToRight
End Sub
Sub links()
ActiveCell.Offset(, -1).Delete xlToLeft
End Sub

Gruß
Rudi

AW: Verschieben von aktiver Zelle
07.04.2016 13:17:13
aktiver
Hallo zusammen,
vielen lieben Dank für eure Antworten.
@Uwe, bei deiner Lösung verschieben sich nicht alle zellen um eins nach rechts, sondern zum Verständnis: Angenommen A1 ist die aktive Zelle dann springt diese in C1 und Inhalt aus C1 springt in A1.
@Rudi, bei deiner Lösung verschiebt sich leider alles, was aber vielleicht daran lag es doch mein versehen ist.
Ich hätte noch zwei weitere Ideen die es vermutlich bringen könnten:
Wenn in Zelle A1 ein Wert X steht (1-7) dann sollen Sich die Zelleninhalte in D1 und F1 um eine Zelle nach rechts verschieben (NUR DIE ZELLENINHALTE), sprich nach E1 und G1.
Oder man nimmt die aller erste Idee und rückt alles via Button weiter und überschreibt dann regelrecht die nächste Zelle, sodass Formatierung und Wert in der neuen Zelle ihren Platz findet.
Ich hoffe ihr könnt mir folgen und vielen Dank.

Anzeige
Bahnhof
07.04.2016 13:50:18
UweD
du wolltest die aktive plus die Zelle daneben verschieben..
Zeig doch mal ein Beispiel mit vorher / nachher

AW: Bahnhof
07.04.2016 15:59:17
UweD
Hallo nochmal
so?
- Rechtsclick auf den Tabellenblattreiter
- Code anzeigen
- Diesen Code dort reinkopieren

Private Sub CommandButton1_Click() 'rechts
Dim Z&, C%, LC%
Z = ActiveCell.Row
C = ActiveCell.Column
LC = Cells(Z, Columns.Count).End(xlToLeft).Column
With Range(Cells(Z, C), Cells(Z, LC))
.Cut .Offset(0, 1)
End With
Cells(1, C).Copy
Cells(Z, C).PasteSpecial Paste:=xlPasteFormats
Application.CutCopyMode = False
Cells(Z, C + 1).Select
End Sub
Sub CommandButton2_Click() 'links()
Dim Z&, C%, LC%
Z = ActiveCell.Row
C = ActiveCell.Column
If C = 1 Then
MsgBox "Ist schon vorne"
Exit Sub
End If
LC = Cells(Z, Columns.Count).End(xlToLeft).Column
With Range(Cells(Z, C), Cells(Z, LC))
.Cut .Offset(0, -1)
End With
Cells(1, LC).Copy
Cells(Z, LC).PasteSpecial Paste:=xlPasteFormats
Application.CutCopyMode = False
Cells(Z, C - 1).Select
End Sub
Gruß UweD
Über Rückmeldungen würde ich mich freuen

Anzeige
noch einige Fehler abgefangen...
07.04.2016 16:27:36
UweD

Private Sub CommandButton1_Click() 'rechts
Dim Z&, C%, LC%
Z = ActiveCell.Row
C = ActiveCell.Column
LC = Cells(Z, Columns.Count).End(xlToLeft).Column
If LC 

AW: noch einige Fehler abgefangen...
07.04.2016 17:23:32
Marvin
Hey Uwe!
Das ist richtig stark, genau das was ich gebraucht habe, zwar macht es wohl auf den ersten Blick noch Probleme, sobald es an einer Bed. Formatierung vorbei muss, aber das löse ich noch.
Vielen Dank für die super Lösung und für deine Mühe!
Beste Grüße

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige