Przykładowe makro do wstawiania/usuwania wierszy lub kolumn w wielu arkuszach w aplikacji Excel

Podsumowanie

Ten artykuł zawiera przykładowe makro języka Visual Basic for Applications firmy Microsoft (procedura podrzędna), które można użyć do wstawiania lub usuwania wierszy, lub kolumn w wielu arkuszach aplikacji Microsoft Excel.

Więcej informacji

Firma Microsoft podaje przykłady programowania tylko dla celów ilustracyjnych, nie udzielając żadnej rękojmi, wyrażonej wprost ani dorozumianej, w tym także, ale nie tylko, dorozumianej rękojmi co do przydatności handlowej lub do określonych celów. W tym artykule zakłada się, że czytelnik zna demonstrowany język programowania oraz narzędzia używane do tworzenia i debugowania procedur. Wykwalifikowani pracownicy Pomocy technicznej firmy Microsoft mogą pomóc w wyjaśnieniu działania określonej procedury. Nie będą oni jednak modyfikować tych przykładów w celu dodania funkcji ani konstruować nowych procedur celem dostosowania ich do potrzeb użytkownika. Aby wstawić lub usunąć wiersze, lub kolumny w wielu arkuszach, użyj instrukcji „For Each...Next“ do wykonywania pętli przez wszystkie wymagane arkusze lub wybierz wiersze, lub kolumny przed wykonaniem wstawiania lub usuwania.

Uwaga

Poniższe przykładowe makra działają tylko w ciągłym zakresie kolumn lub wierszy.

Przykładowe makro używające pętli do wstawiania wierszy w wielu arkuszach

Sub Insert_Rows_Loop()
     Dim CurrentSheet As Object

     ' Loop through all selected sheets.
     For Each CurrentSheet In ActiveWindow.SelectedSheets
        ' Insert 5 rows at top of each sheet.
        CurrentSheet.Range("a1:a5").EntireRow.Insert
     Next CurrentSheet
End Sub

Przykładowe makro do wybrania kolumny i wstawienia nowej kolumny

Poniższe przykładowe makro wybiera całą kolumnę przed wstawieniem nowych kolumn:

Sub Select_Insert_Column()
    Dim MyRange as Object
    ' Store the selected range in a variable.
    Set MyRange = Selection
    ' Select the entire column.
    Selection.EntireColumn.Select
    ' Insert Columns in all selected sheets.
    Selection.Insert
    ' Reselect the previously selected cells.
    MyRange.Select
End Sub