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.
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.
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.
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“.
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:
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.
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:
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.
Auch jetzt wurde der ursprüngliche Zustand wieder hergestellt.
Entdecke mehr von Clevercalcul
Subscribe to get the latest posts sent to your email.