Zakres zmiany rozmiaru Excel VBA

Zmień rozmiar za pomocą VBA

Ten samouczek pokaże, jak korzystać z Zmień rozmiar właściwości z Obiekt zakresu zmienić, aby zwrócić nowy zakres o zmienionym rozmiarze z oryginalnego obiektu Range.

Składnia

Składnia właściwości Resize to:

1 Range("A1").Resize (RowSize, ColumnSize)

Gdzie Zakres („A1”) to Twój zakres początkowy.

RowSize i ColumnSize muszą być większe od zera. Każde dane wejściowe są opcjonalne (np. możesz pominąć RowSize, aby zmienić tylko liczbę kolumn lub odwrotnie).

Zmień rozmiar liczby wierszy i kolumn

Poniższy przykład rozszerza zakres o jedną komórkę A1 do zakresu A1:D10, zwiększając liczbę wierszy do 10 i liczbę kolumn do 5.

1 Zakres("A1").Zmień rozmiar(10, 5).Wybierz

Lub, częściej, przypiszesz zmieniony zakres do zmiennej:

12 ' Zmień rozmiar zakresu do pożądanego rozmiaru i przypisz do zmiennejSet newRng = ActiveSheet.Range("A1").Resize(10, 5)

Zmień rozmiar tylko liczby rzędów

Poniższy przykład zmienia tylko liczbę wierszy:

12 ' Zmień tylko rozmiar wiersza, nowy zakres będzie wynosił $A$1:$A$10Ustaw nowyRng = rng.Resize(10)

Zmień rozmiar tylko liczby kolumn

Poniższy przykład zmienia tylko liczbę kolumn:

12 ' Zmień tylko rozmiar kolumny, nowy zakres będzie wynosił $A$1:$E$1Ustaw nowyRng = rng.Resize(, 5)

Zmień rozmiar zakresu tabeli, aby wykluczyć nagłówek

Jeśli masz tabelę w aktywnym arkuszu z wierszem nagłówka, kod najpierw wybierze całą tabelę, a następnie przesunie się o jeden wiersz w dół, aby wykluczyć nagłówek za pomocą metody Range.Offset. Następnie użyje właściwości Range.Resize, aby zmniejszyć rozmiar o jeden wiersz.

1234567891011 Sub SelectTableData()' **WAŻNY**' Kliknij dowolną komórkę tabeli przed uruchomieniem makra' Przejdź o jeden wiersz w dół, używając opcji Przesunięcie, a następnie zmniejsz rozmiar zakresu o jeden wierszUstaw tbl = ActiveCell.CurrentRegion.Offset(1, 0).Resize(tbl.Rows.Count - 1, _tabl.Kolumny.Liczba)' Dane są wybrane z wyłączeniem wiersza nagłówkatab.Adres.WybierzNapis końcowy

Zapisz tablicę 2-D do zakresu

Innym powszechnym zastosowaniem jest zapisanie dwuwymiarowej tablicy na arkuszu. Ponieważ zakres do zapisania powinien odpowiadać rozmiarowi tablicy, który zwykle nie jest znany z góry, do ustawienia zakresu wyjściowego używana jest metoda Resize

Poniższy przykład odczyta dane z zakresu A1:E10 w aktywnym arkuszu do tablicy i zapisze tablicę do arkusza „Wyjście”, zaczynając od komórki A1:

123456 Sub WriteArray()' Odczytaj dane do tablicydane = Zakres("A1:E10").Wartość' Zmień rozmiar zakresu wyjściowego i zapisz tablicęWorksheets("Output").Range("A1").Resize(UBound(data, 1), UBound(data, 2)).Value = dataNapis końcowy

Autor: Vinamra Chandra

wave wave wave wave wave