VBA: Zellen einfügen und löschen

ObjektZelle8

Basisobjekte gibt es in Excel eine ganze Menge.

Bekannt sein dürften dir Bereiche, Spalten, Zeilen, Tabellen und Arbeitsmappen. Und ganz sicher ist dir auch das Basisobjekt Zelle bekannt.

Willst du in Excel eine Zelle in einen Tabellenbereich einfügen, wirst du das Zellenkontextmenü aufrufen und den Befehl „Zellen einfügen“ wählen.

Dann wirst du wählen, ob eine Zelle nach rechts oder nach unten verschoben werden soll. Kannst du das irgendwie rückgängig machen?

Wie das mit den Methoden „Insert“ bzw. „Delete“ in einem Makro gemacht werden kann, darum soll es in diesem Beitrag gehen.

1. Zellen einfügen

1.1 Zelle einfügen bzw. nach rechts verschieben

Gegeben sei ein Bereich mit drei Spalten und vier Zeilen. In den 12 Zellen befinden sich Zahlenwerte.

ObjektZelle1

Du willst nun mittels VBA die Zelle D4 nach rechts verschieben.

Gehe dazu im Menü „Entwicklertools“ in den VBA-Editor und dort auf „Visual Basic“.

Füge über das dortige Menüfeld „Einfügen“ ein Modul ein und schreibe dort hinein diesen Code:

Sub ZelleEinfügen1()

Range(“D4”).Insert xlShiftToRight

End Sub

Gehe nun in deine Arbeitsmappe und rufe im Menü „Entwicklertools“ die „Makros“ auf.

ObjektZelle2

Dort findest du das zuvor bearbeitete Makro „ZelleEinfügen1“.

Klicke nun auf „Ausführen“.

Das Makro wurde ausgeführt, Zelle D4 wurde nach rechts verschoben, der Wert 13 steht jetzt in Zelle E4. Zelle D4 wird zur Leerzelle.

ObjektZelle3

1.2 Zelle nach unten verschieben

Als nächstes willst du mittels VBA die Zelle D4 nach unten verschieben.

Schreibe im VBA-Editor in dein Modul diesen Code:

Sub ZelleEinfügen2()

Range(“D4”).Insert xlShiftDown

End Sub

Rufe wie oben nun das Makro „ZelleEinfügen2“ auf und klicke auf „Ausführen“.

ObjektZelle4

Das Makro wurde ausgeführt, Zelle D4 wurde nach unten verschoben, aber auch die Zellen D5:D7.

2. Zellen löschen

2.1 Zelle löschen bzw. nach links verschieben

Du hast im Abschnitt 1.1 eine Zelle nach rechts verschoben und möchtest das rückgängig machen.

Den Rückgängig-Pfeil gibt es in VBA nicht. Du kannst den Vorgang auch nur mit einem Makro ausführen.

Dies ist die Ausgangssituation:

ObjektZelle5

Zelle D4, die Leerzelle, soll gelöscht werden. Statt der Methode „Insert“ verwendest du jetzt die Methode „Delete“.

Schreibe in dein Modul diesen Code:

Sub ZelleLöschen1()

Range(“D4”).Delete xlShiftToLeft

End Sub

Lass nun dieses Makro ausführen.

ObjektZelle6

Und siehe da, der ursprüngliche Zustand wurde wieder hergestellt.

2.2 Zelle löschen bzw. nach oben verschieben

Du hast im Abschnitt 1.2 eine Zelle nach unten verschoben und möchtest das rückgängig machen.

Den Rückgängig-Pfeil gibt es in VBA nicht, wie du bereits weißt.

Dies ist die Ausgangssituation:

ObjektZelle7

Zelle D4 soll auch hier gelöscht werden. Statt der Methode „Insert“ verwendest du wieder die Methode „Delete“.

Schreibe in dein Modul diesen Code:

 Sub ZelleLöschen2()

 Range(“D4”).Delete xlShiftUp

 End Sub

Lass das Makro ausführen.

ObjektZelle8

Auch jetzt wurde der ursprüngliche Zustand wieder hergestellt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

WordPress Cookie Plugin von Real Cookie Banner