Microsoft Excel ist eines der beliebtesten Werkzeuge für die Arbeit mit Tabellendaten. Die integrierte Programmiersprache VBA ermöglicht es Ihnen, viele Aktionen in Excel zu automatisieren, einschließlich des Einfügens von Zeilen in Tabellen. In diesem Artikel werden wir eine detaillierte Anweisung zum Einfügen einer Zeichenfolge mit VBA betrachten.
Bevor Sie mit VBA in Excel arbeiten, müssen Sie den Entwicklermodus aktivieren. Öffnen Sie dazu Excel und wählen Sie die Registerkarte Datei aus. Wählen Sie dann Optionen und dann Bandeinstellungen. Stellen Sie im angezeigten Fenster sicher, dass die Option Entwickler ausgewählt ist, und klicken Sie auf OK. Die Registerkarte "Entwickler" wird nun in der Multifunktionsleiste angezeigt.
Um eine Zeile mit VBA einzufügen, müssen Sie den VBA-Editor öffnen. Klicken Sie dazu auf die Registerkarte "Entwickler" und dann auf die Schaltfläche "Visual Basic-Editor". Im VBA-Editor können Sie Makros schreiben und bearbeiten, um Aktionen in Excel zu automatisieren.
Schritt 1: Wählen Sie das Blatt aus, in das Sie die Zeile einfügen möchten. Suchen Sie dazu im VBA–Editor das Fenster Projekt - VBAProject auf der linken Seite. Erweitern Sie die Listen "VBAProject (Ihre Datei.xlsm)" und "Blätter" und wählen Sie das gewünschte Blatt aus, indem Sie auf seinen Namen klicken.
Schritt 2: Geben Sie im VBA-Editor den folgenden Code ein:
Rows(4).Insert Shift:=xlDown
In diesem Fall fügen wir eine Zeile vor der vierten Zeile ein und verschieben alle nachfolgenden Zeilen nach unten.
Nachdem Sie das Makro nun abgeschlossen haben, klicken Sie im VBA-Editor auf die Schaltfläche Schließen. Kehren Sie zu Excel zurück und suchen Sie die Registerkarte Entwickler. Suchen Sie auf dieser Registerkarte die Schaltfläche "Makros", und wählen Sie das von Ihnen erstellte Makro aus der Liste aus, um die Zeile einzufügen. Führen Sie das Makro aus, und die Zeile wird eingefügt.
Auf diese Weise können Sie mit VBA in Excel das Einfügen von Zeilen in Tabellen automatisieren und so die Arbeit mit Daten vereinfachen.
Erste Schritte mit VBA in Excel
Führen Sie die folgenden Schritte aus, um mit VBA in Excel zu beginnen:
- Öffnen Sie Excel und wählen Sie die gewünschte Arbeitsmappe aus, in der Sie VBA verwenden möchten.
- Öffnen Sie den VBA-Editor durch Drücken einer Tastenkombination Alt + F11.
- Wählen Sie im VBA-Editor das Modul aus, in dem der Code enthalten sein soll.
- Beginnen Sie mit dem Schreiben von Code mit der VBA-Syntax.
In VBA wird der Code in Verfahren und Funktionen. Prozeduren sind eine Reihe von Anweisungen, die nacheinander ausgeführt werden. Funktionen sind der Teil des Codes, der einen bestimmten Wert zurückgibt.
Beispiel für eine leere Prozedur in VBA:
Sub ПримерПроцедуры()' Ваш кодEnd Sub
Beispielfunktion in VBA:
Function ПримерФункции() As IntegerПримерФункции = 10End Function
VBA bietet viele integrierte Funktionen und Methoden für die Arbeit mit Excel. Sie können sie zum Ausführen verschiedener Operationen verwenden, z. B. zum Lesen und Schreiben von Daten, zum Formatieren von Zellen, zum Erstellen von Diagrammen usw.
Eine der grundlegenden Operationen, die Sie in Excel mit VBA ausführen können, ist das Einfügen einer Zeichenfolge. Wenn Sie ein Makro in VBA verwenden, können Sie automatisch eine neue Zeile hinzufügen und mit Daten füllen.
Öffnen Sie den VBA-Editor in Excel
Um eine Zeile mit VBA in Excel einzufügen, müssen Sie den VBA-Editor öffnen. Dies ist ein spezielles Fenster, mit dem Sie Makros in VBA schreiben und bearbeiten können.
Führen Sie die folgenden Schritte aus, um den VBA-Editor zu öffnen:
- Öffnen Sie Excel.
- Klicken Sie in der Symbolleiste auf die Registerkarte Entwickler. Wenn die Registerkarte "Entwickler" nicht vorhanden ist, müssen Sie sie aktivieren. Führen Sie dazu die folgenden Schritte aus:
Excel 2010 und höher:
- Klicken Sie mit der rechten Maustaste auf eine Symbolleiste oder ein Menüband.
- Wählen Sie Band anpassen.
- Aktivieren Sie das Kontrollkästchen Entwickler und klicken Sie auf OK.
- Klicken Sie auf die Microsoft Office-Schaltfläche.
- Wählen Sie Excel-Optionen aus.
- Aktivieren Sie im Abschnitt Hauptregisterkarte das Kontrollkästchen Entwickler und klicken Sie auf OK.
- Suchen Sie auf der Registerkarte Entwickler die Gruppe Code und klicken Sie auf die Schaltfläche VBA-Editor.
Nachdem Sie diese Schritte ausgeführt haben, wird der VBA-Editor geöffnet, in dem Sie Makros in VBA schreiben und bearbeiten können.
Erstellen Sie ein neues VBA-Modul
Führen Sie die folgenden Schritte aus, um ein neues Modul zu erstellen:
- Öffnen Sie Excel und navigieren Sie zu der Arbeitsmappe, in die Sie die Zeile einfügen möchten.
- Klicken Sie in der oberen Symbolleiste auf die Registerkarte Entwickler. Wenn Sie die Registerkarte «Entwickler» nicht haben, müssen Sie sie aktivieren. Klicken Sie dazu mit der rechten Maustaste auf eine beliebige Stelle in der oberen Symbolleiste und wählen Sie Symbolleiste anpassen. Aktivieren Sie dann das Kontrollkästchen neben Entwickler und klicken Sie auf OK.
- Suchen Sie auf der Registerkarte «Entwickler» die Gruppe «Code» und klicken Sie auf die Schaltfläche «Einfügen».
- Wählen Sie "Modul" aus der Dropdown-Liste aus.
Als Ergebnis dieser Schritte wird ein neues Fenster geöffnet, in dem Sie Ihren VBA-Code schreiben können. Jetzt können Sie mit dem Schreiben von Code beginnen, um eine Zeile mit VBA in Excel einzufügen.
Deklarieren von Variablen und Konfigurieren der Entwicklungsumgebung
Bevor Sie mit dem Einfügen einer Zeile in Excel mit VBA beginnen, müssen Sie mehrere Variablen deklarieren und die Entwicklungsumgebung konfigurieren.
Variablen können mit dem Schlüsselwort Dim deklariert werden. Im Folgenden finden Sie ein Beispiel für die Deklaration von Variablen, die wir für diese Aufgabe benötigen:
- ws ist eine Variable vom Typ Worksheet, die einen Verweis auf das aktive Excel-Arbeitsblatt enthält;
- rngInsert ist eine Variable vom Typ Range, die einen Verweis auf den Bereich enthält, in den eine neue Zeile eingefügt werden soll;
- newRow ist eine Variable vom Typ Range , die einen Verweis auf die neue Zeile enthält, die wir einfügen werden;
- LastRow ist eine Variable vom Typ Long , die die Nummer der letzten gefüllten Zeile im Bereich enthält.
Nachdem Sie die Variablen deklariert haben, können Sie mit der Konfiguration der Entwicklungsumgebung beginnen. Wählen Sie dazu im Excel-Menü "Entwickler" aus und öffnen Sie das Fenster "Entwickler". In diesem Fenster müssen Sie "Visual Basic" aktivieren und den "Visual Basic-Editor" in diesem Fenster öffnen. Wählen Sie im Editor Einfügen und Modul aus, um ein neues Modul hinzuzufügen.
Jetzt, da die Variablen deklariert und die Umgebung konfiguriert sind, können Sie mit dem Schreiben von Code beginnen, um die Zeile mithilfe von VBA in Excel einzufügen.
Legen Sie fest, wo die Zeile in Excel eingefügt wird
Bevor Sie eine neue Zeile mit VBA in Excel einfügen können, müssen Sie bestimmen, wo Sie die neue Zeile einfügen möchten. Abhängig von Ihrer spezifischen Aufgabe können Sie verschiedene Methoden verwenden, um dies zu tun.
- Wenn Sie die Zeilennummer kennen, nach der eine neue Zeile eingefügt werden soll, können Sie die Rows-Methode und ihre Insert-Eigenschaft verwenden. Um beispielsweise eine neue Zeile nach Zeile 5 einzufügen, können Sie den folgenden Code verwenden:
Rows(5).Insert - Wenn Sie eine neue Zeile vor einer bestimmten Zeile einfügen müssen, können Sie die Rows-Methode und ihre Insert-Eigenschaft sowie die Previous-Eigenschaft dieser Zeile verwenden. Um beispielsweise eine neue Zeile vor Zeile 10 einzufügen, können Sie den folgenden Code verwenden:
Rows(10).Insert - Wenn Sie die erste leere Zeile in einer Spalte finden müssen, um eine neue Zeile danach einzufügen, können Sie die End-Methode und ihre xlUp-Eigenschaft in Verbindung mit der Offset-Methode verwenden. Um beispielsweise die erste leere Zeile in Spalte A zu finden, können Sie den folgenden Code verwenden:
ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Offset(1).EntireRow.Insert
Mit diesen Methoden können Sie die genaue Einfügemarke der neuen Zeile bestimmen, bevor Sie die nächsten Schritte ausführen. Beachten Sie, dass in den obigen Beispielen die Insert-Methode verwendet wird, um tatsächlich eine neue Zeile einzufügen.
Fügen Sie eine Zeile mit VBA-Code ein
Das Hinzufügen einer neuen Zeile zu einer Excel-Tabelle mithilfe von VBA-Code kann nützlich sein, wenn Sie sich wiederholende Aufgaben automatisieren. Durch Einfügen einer Zeile können Sie eine Tabelle erweitern, neue Informationen hinzufügen oder vorhandene Daten aktualisieren. In diesem Tutorial zeigen wir Ihnen, wie Sie eine Zeile mit VBA in Excel einfügen.
Um zu beginnen, öffnen Sie den Visual Basic-Editor, indem Sie gleichzeitig Alt und F11 drücken. Wählen Sie im Editorfenster das Excel-Projekt aus, und fügen Sie den folgenden Code ein:
Sub InsertRow()Dim rng As RangeDim newRow As Range' Выберите диапазон, в который нужно вставить строкуSet rng = ThisWorkbook.Worksheets("Лист1").Range("A2:D2")' Вставляем новую строку перед выбранным диапазономSet newRow = rng.EntireRow.Insert(xlShiftDown)' Опционально заполняем ячейки новой строки даннымиnewRow.Cells(1, 1).Value = "Новая ячейка 1"newRow.Cells(1, 2).Value = "Новая ячейка 2"newRow.Cells(1, 3).Value = "Новая ячейка 3"newRow.Cells(1, 4).Value = "Новая ячейка 4"' Освобождаем память и закрываем редактор VBASet newRow = NothingSet rng = NothingThisWorkbook.Close VBAEditorEnd Sub
In diesem Beispiel wählen wir den Zellbereich "A2:D2" zu "Tabelle1" aus und fügen eine neue Zeile davor mit der Insert(xlShiftDown) -Methode ein. Dann füllen wir eine neue Zeile mit Daten aus, indem wir die Werte für jede Zelle angeben.
Schließen Sie nach dem Einfügen der Zeile den VBA-Editor. Um diesen Code auszuführen, kehren Sie zu Excel zurück und drücken Sie Alt + F8, um das Makrofenster aufzurufen. Wählen Sie das Makro insertRow aus und klicken Sie auf die Schaltfläche Ausführen.
Auf diese Weise können Sie eine neue Zeile mit VBA-Code in Excel einfügen. Beachten Sie, dass Sie den Zellbereich und die Werte je nach Ihren spezifischen Anforderungen ändern können.
Anmerkung: es wird empfohlen, vor dem Ausführen von VBA-Makros eine Kopie der Tabelle beizubehalten, damit Sie im Falle eines Fehlers die ursprünglichen Daten wiederherstellen können.