Löschen jeder anderen Zeile in einem Excel-Arbeitsblatt
Artikel
Gilt für:
Microsoft Office Excel 2003, Microsoft Office Excel 2007, Excel 2010, Excel 2013
Zusammenfassung
Dieser Artikel enthält ein Microsoft Visual Basic for Applications-Beispielmakro, mit dem Sie jede andere Zeile in einem ausgewählten Bereich eines Microsoft Excel-Arbeitsblatts löschen können.
Weitere Informationen
Die Verwendung der hier aufgeführten Informationen, Makro- oder Programmcodes geschieht auf Ihre eigene Verantwortung. Microsoft stellt Ihnen diese Informationen sowie Makro- und Programmlistings ohne Gewähr auf Richtigkeit, Vollständigkeit und/oder Funktionsfähigkeit sowie ohne Anspruch auf Support zur Verfügung. Die zur Verfügung gestellten Makro- und Programmierungsbeispiele sollen lediglich exemplarisch die Funktionsweise des Beispiels aufzeigen. Die Microsoft Support-Spezialisten können bei der Erläuterung der Funktionalität bestimmter Prozeduren helfen, jedoch werden sie diese Beispiele nicht in Bezug auf eine erweiterte Funktionalität verändern, noch werden sie Prozeduren entwickeln, die auf Ihre besonderen Bedürfnisse zugeschnitten sind. Um das folgende Makro zu verwenden, richten Sie eine Excel-Arbeitsmappe wie folgt ein:
Erstellen Sie eine neue Microsoft Excel-Arbeitsmappe.
Geben Sie in einem neuen Arbeitsblatt im Bereich A1:A9 die Zahlen 1 bis 5 ein, und überspringen Sie zeilen, wie im folgenden Beispiel gezeigt:
excel
A1: 1A2:
A3: 2A4:
A5: 3A6:
A7: 4A8:
A9: 5
Zeigen Sie im Menü „Extras“ auf „Makro“, und klicken Sie dann auf „Visual Basic-Editor“.
Hinweis Klicken Sie in Microsoft Office Excel 2007 und höheren Versionen auf der Registerkarte Entwicklertools in der Gruppe Code auf Visual Basic.
Klicken Sie im Menü „Einfügen“ auf „Modul“.
Geben Sie im neuen Modul das folgende Makro ein:
VB
Sub Delete_Every_Other_Row()
' Dimension variables.
Y = False' Change this to True if you want to' delete rows 1, 3, 5, and so on.
I = 1Set xRng = Selection
' Loop once for every row in the selection.For xCounter = 1To xRng.Rows.Count
' If Y is True, then...If Y = TrueThen' ...delete an entire row of cells.
xRng.Cells(I).EntireRow.Delete
' Otherwise...Else' ...increment I by one so we can cycle through range.
I = I + 1EndIf' If Y is True, make it False; if Y is False, make it True.
Y = Not Y
Next xCounter
EndSub
Wechseln Sie zu dem Arbeitsblatt, das die Daten enthält, und wählen Sie dann den Bereich A1:A9 aus.
Zeigen Sie zum Ausführen des Makros im Menü Extras auf Makro, und klicken Sie dann auf Makros.
Hinweis
Klicken Sie in Excel 2007 und höheren Versionen auf der Registerkarte Entwicklertools in der Gruppe Code auf Makros.
Um die Registerkarte Entwickler im Menüband anzuzeigen, klicken Sie auf die Microsoft Office-Schaltfläche, klicken Sie auf Excel-Optionen, klicken Sie auf die Kategorie Beliebt, aktivieren Sie das Kontrollkästchen Registerkarte Entwickler im Menüband anzeigen , und klicken Sie dann auf OK.
Wählen Sie das Makro Delete_Every_Other_Row aus, und klicken Sie dann auf Ausführen.
Dieses Makro löscht jede andere Zeile, beginnend mit der zweiten Zeile der Auswahl.
Hinweis
Wenn Sie über eine Liste mit Daten verfügen, die mehrere Spalten enthält, wählen Sie nur die erste Datenspalte aus, und führen Sie dann das Makro aus.
Erfahren Sie, wie Sie Power Automate für Desktop verwenden, um mit verschiedenen Microsoft Excel-Aktionen Excel-Dateien zu öffnen, zu lesen und zu bearbeiten.
Zeigen Sie, dass Sie über die zur optimalen Nutzung von Excel 2016 erforderlichen Fähigkeiten verfügen, indem Sie eine Zertifizierung als Microsoft Office Specialist (MOS) erwerben.