Ta bort varannan rad på ett Excel kalkylblad
Anteckning
Office 365 ProPlus byter namn till Microsoft 365-appar för företag. Mer information om den här ändringen finns i det här blogginlägget.
Sammanfattning
Den här artikeln innehåller ett Microsoft Visual Basic for Applications exempelmakro som du kan använda för att ta bort varannan rad i ett markerat område i Microsoft Excel kalkylblad.
Mer information
Microsoft tillhandahåller programmeringsexempel enbart i förklarande syfte och gör inga utfästelser, varken uttryckligen eller underförstått. Detta omfattar men begränsas inte till underförstådd garanti för säljbarhet eller lämplighet för ett visst syfte. I denna artikel förutsätts att du känner till det programmeringsspråk som demonstreras och de verktyg som används för att skapa och felsöka procedurer. Microsofts supportexperter kan hjälpa till att förklara funktionerna i en viss procedur, men de kommer inte att ändra dessa exempel för att tillhandahålla extra funktioner eller konstruera procedurer för att uppfylla dina specifika behov. Om du vill använda följande makro ska du konfigurera Excel arbetsbok på följande sätt:
Skapa en ny Microsoft Excel arbetsbok.
Skriv siffrorna 1 till 5 i området A1:A9 i ett nytt kalkylblad, hoppa över rader, som i följande exempel:
A1: 1 A2: A3: 2 A4: A5: 3 A6: A7: 4 A8: A9: 5Peka på Makro på Verktyg-menyn och klicka sedan på Visual Basic Editor.
Obs! I Microsoft Office Excel 2007 och senare versioner klickar du Visual Basic gruppen Kod på fliken Utvecklare.
Klicka på Modul på Infoga-menyn.
I den nya modulen skriver du följande makro:
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 = 1
Set xRng = Selection
' Loop once for every row in the selection.
For xCounter = 1 To xRng.Rows.Count
' If Y is True, then...
If Y = True Then
' ...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 + 1
End If
' If Y is True, make it False; if Y is False, make it True.
Y = Not Y
Next xCounter
End Sub
Växla till kalkylbladet som innehåller informationen och markera sedan området A1:A9.
Om du vill köra makrot pekar du på Makro på menyn Verktyg och klickar sedan på Makron.
Anteckning
- I Excel 2007 och senare versioner klickar du på Makron i gruppen Kod på fliken Utvecklare.
- Du visar fliken Utvecklare i menyfliksområdet genom att klicka på Microsoft Office-knappen, klicka på Excel Alternativ , klicka på kategorin Populära, markera kryssrutan Visa fliken Utvecklare i menyfliksområdet och klicka sedan på OK.
Markera Delete_Every_Other_Row och klicka sedan på Kör.
Det här makrot tar bort varannan rad, med början i den andra raden i markeringen.
Anteckning
Om du har en lista med data som innehåller flera kolumner markerar du bara den första kolumnen med data och kör sedan makrot.