Articles

VBA – zaznaczanie (i praca z) całymi wierszami i kolumnami – Automatyzacja Excela

W tym poradniku pokażemy, jak zaznaczać i pracować z całymi wierszami lub kolumnami w VBA.

Najpierw zajmiemy się zaznaczaniem całych wierszy i kolumn, a następnie zademonstrujemy, jak manipulować wierszami i kolumnami.

Wybieranie całych wierszy lub kolumn

Wybieranie pojedynczego wiersza

Możesz wybrać cały wiersz za pomocą obiektu Rows w ten sposób:

Rows(5).Select

Możesz też użyć EntireRow wraz z obiektami Range lub Cells:

Range("B5").EntireRow.Select

lub

Cells(5,1).EntireRow.Select

Możesz również użyć obiektu Range, aby odwołać się konkretnie do Wiersza:

Range("5:5").Select

Wybierz pojedynczą kolumnę

Zamiast obiektu Rows, użyj obiektu Columns, aby wybrać kolumny. Tutaj możesz odwołać się do kolumny o numerze 3:

Columns(3).Select

lub litery „C”, otoczonej cudzysłowem:

Columns("C").Select

Zamiast EntireRow, użyj EntireColumn wraz z obiektami Range lub Cells, aby wybrać całe kolumny:

Range("C5").EntireColumn.Select

lub

Cells(5,3).EntireColumn.Select

Możesz również użyć obiektu Range, aby odnieść się konkretnie do kolumny:

Range("B:B").Select

Wybieranie wielu wierszy lub kolumn

Wybieranie wielu wierszy lub kolumn działa dokładnie tak samo, gdy używamy EntireRow lub EntireColumn:

Range("B5:D10").EntireRow.Select

lub

Range("B5:B10").EntireColumn.Select

Jednakże, gdy używasz obiektów Rows lub Columns, musisz podać numery wierszy lub litery kolumn w cudzysłowie:

Rows("1:3").Select

lub

Columns("B:C").Select

Wybierz wiersz lub kolumnę ActiveCell

Aby wybrać wiersz lub kolumnę ActiveCell, możesz użyć jednej z tych linii kodu:

ActiveCell.EntireRow.Select

lub

ActiveCell.EntireColumn.Select

Wybierz Wiersze i Kolumny na innych arkuszach

Aby wybrać Wiersze lub Kolumny na innych arkuszach, musisz najpierw wybrać arkusz.

Sheets("Sheet2").SelectRows(3).Select

To samo dotyczy zaznaczania wierszy lub kolumn w innych skoroszytach.

Workbooks("Book6.xlsm").ActivateSheets("Sheet2").SelectRows(3).Select

Uwaga: Należy aktywować żądany skoroszyt. W przeciwieństwie do obiektu Sheets, obiekt Workbook nie posiada metody Select.

Czy zaznaczanie wierszy i kolumn jest konieczne?

Jednakże (prawie?) nigdy nie jest konieczne zaznaczanie wierszy lub kolumn. Nie musisz zaznaczać wiersza lub kolumny, aby wejść z nimi w interakcję. Zamiast tego, możesz zastosować metody lub właściwości bezpośrednio do wierszy lub kolumn. Następnych kilka sekcji zademonstruje różne metody i właściwości, które mogą być zastosowane.

Możesz użyć każdej metody wymienionej powyżej, aby odnieść się do wierszy lub kolumn.

Metody i właściwości wierszy & Kolumny

Usuwanie całych wierszy lub kolumn

Aby usunąć wiersze lub kolumny, użyj metody Usuń:

Rows("1:4").Delete

lub:

Columns("A:D").Delete

Wstawianie wierszy lub kolumn

Aby wstawić wiersze lub kolumny, użyj metody wstawiania:

Rows("1:4").Insert

lub:

Columns("A:D").Insert

Kopiuj & Wklej całe wiersze lub kolumny

Wklej do istniejącego wiersza lub kolumny

.

Podczas kopiowania i wklejania całych wierszy lub kolumn musisz zdecydować, czy chcesz wkleić dane nad istniejącym wierszem / kolumną, czy chcesz wstawić nowy wiersz / kolumnę, aby wkleić dane.

Pierwsze przykłady skopiują i wkleją dane nad istniejącym wierszem lub kolumną:

Range("1:1").Copy Range("5:5")

lub

Range("C:C").Copy Range("E:E")

Insert & Wklej

Kolejne przykłady wkleją dane do nowo wstawionego wiersza lub kolumny.

To spowoduje skopiowanie wiersza 1 i wstawienie go do wiersza 5, przesuwając istniejące wiersze w dół:

Range("1:1").CopyRange("5:5").Insert

To spowoduje skopiowanie kolumny C i wstawienie jej do kolumny E, przesuwając istniejące kolumny w prawo:

Range("C:C").CopyRange("E:E").Insert

Ukryj / Ukryj wiersze i kolumny

Aby ukryć wiersze lub kolumny ustaw ich właściwość Ukryte na True. Użyj False aby ukryć wiersze lub kolumny:

'Hide RowsRows("2:3").EntireRow.Hidden = True'Unhide RowsRows("2:3").EntireRow.Hidden = False

lub

'Hide ColumnsColumns("B:C").EntireColumn.Hidden = True'Unhide ColumnsColumns("B:C").EntireColumn.Hidden = False

Group / UnGroup Rows and Columns

Jeśli chcesz zgrupować wiersze (lub kolumny) użyj kodu jak poniżej:

'Group RowsRows("3:5").Group'Group ColumnsColumns("C:D").Group

Aby usunąć grupowanie użyj tego kodu:

'Ungroup RowsRows("3:5").Ungroup'Ungroup ColumnsColumns("C:D").Ungroup

To spowoduje rozwinięcie wszystkich „zgrupowanych” poziomów konspektu:

ActiveSheet.Outline.ShowLevels RowLevels:=8, ColumnLevels:=8

a to spowoduje zwinięcie wszystkich poziomów konspektu:

ActiveSheet.Outline.ShowLevels RowLevels:=1, ColumnLevels:=1

Set Row Height or Column Width

Aby ustawić szerokość kolumny użyj tej linii kodu:

Columns("A:E").ColumnWidth = 30

Aby ustawić wysokość wiersza użyj tej linii kodu:

Rows("1:1").RowHeight = 30

Autofit Row Height / Column Width

Aby Autofit a column:

Columns("A:B").Autofit

Autofit a row:

Rows("1:2").Autofit

Wiersze i kolumny na innych arkuszach lub skoroszytach

Aby wejść w interakcję z wierszami i kolumnami na innych arkuszach, należy zdefiniować obiekt Sheets:

Sheets("Sheet2").Rows(3).Insert

Podobnie, aby współdziałać z wierszami i kolumnami w innych skoroszytach, musisz również zdefiniować obiekt Workbook:

Workbooks("book1.xlsm").Sheets("Sheet2").Rows(3).Insert

Uzyskaj aktywny wiersz lub kolumnę

Aby uzyskać aktywny wiersz lub kolumnę, możesz użyć właściwości Wiersz i Kolumna obiektu ActiveCell.

MsgBox ActiveCell.Row

lub

MsgBox ActiveCell.Column

To działa również z obiektem Range:

MsgBox Range("B3").Column

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *