Змінення розміру VBA | Як використовувати зменшення розміру властивості в Excel VBA? (З прикладами)

Змінення розміру Excel VBA

Змінити розмір - властивість, доступна у VBA, змінювати або змінювати розмір діапазону комірок з активної комірки за потреби. Наприклад, припустимо, що ви перебуваєте в комірці B5, і з цієї комірки, якщо ви хочете вибрати 3 рядки та два стовпці, ми можемо змінити розмір діапазону за допомогою властивості RESIZE VBA.

Синтаксис властивості зміни розміру VBA

Нижче наведено синтаксис властивості VBA RESIZE.

Діапазон (). Змінення розміру ([Розмір рядка], [Розмір стовпця])

Спочатку нам потрібно вказати, з якої комірки нам потрібно змінити розмір, використовуючи об’єкт Range .

Тоді використовуйте властивість excel VBA Resize і в цій властивості нам потрібно вказати обмеження розміру рядка та розміру стовпця . На основі наданих номерів рядків та номерів стовпців він змінить його розмір.

Приклади використання Resize у VBA

Нижче наведено приклади використання зміни розміру в Excel VBA.

Ви можете завантажити цей шаблон зміни розміру VBA Excel тут - Шаблон зміни розміру Excel VBA

Приклад №1

Припустимо, у вас є дані з комірки А1 до В14 та з комірки А1, якщо ви хочете вибрати 3 рядки вниз та два стовпці лівого діапазону, ми можемо зробити це за допомогою властивості ЗМІНИТИ в Excel VBA.

Нижче наведено дані, які ми використовуємо для цього прикладу.

Отже, по-перше, нам потрібно надати першу посилання на клітинку або початкову точку, використовуючи об’єкт RANGE, у цьому прикладі початковою точкою є комірка A1.

Код:

Sub Resize_Example () Діапазон ("A1"). Кінець Sub

Для цього діапазону використовуйте властивість RESIZE.

Код:

 Sub Resize_Example () Діапазон ("A1"). Змінити розмір (End Sub 

Першим аргументом RESIZE є Розмір рядка, тому нам потрібно вибрати 3 рядки даних і надати числове значення 3.

Код:

 Sub Resize_Example () Діапазон ("A1"). Змінити розмір (3, Кінець Sub 

Наступним аргументом є Розмір стовпця для цього введення, як слід вибрати стовпці, я вводжу 3 стовпці.

Код:

 Sub Resize_Example () Діапазон ("A1"). Змінити розмір (3,3) Кінець Sub 

Після того, як розмір буде зроблено, нам потрібно надати те, що нам потрібно зробити з цим діапазоном. Я просто оберу метод «Вибрати» для початку.

Код:

 Sub Resize_Example () Діапазон ("A1"). Змінити розмір (3, 3). Виберіть End Sub 

Запустіть код і подивіться, скільки рядків і скільки стовпців він виділить.

Як ви можете бачити вище, з комірки А1 вона вибрала три рядки вниз і три стовпці праворуч.

Приклад №2

Тепер погляньте на наведений нижче код VBA.

У наведеному вище коді Row Size, ми поставили порожню осередок  і для стовпця Розмір, ми поставили 3.

Код:

 Sub Resize_Example () Діапазон ("A1"). Змінити розмір (0, 3). Виберіть End Sub 

Запустіть код і подивіться, скільки рядків і скільки стовпців він виділить.

Як бачите, він вибрав лише активний рядок комірки, тобто 1-й рядок та три стовпці. Це пов’язано з тим, що для розміру рядка ми надали порожню комірку,  а для розміру стовпця - 3, і відповідно він вибрав діапазон даних.

Тепер подивіться на наведений нижче код.

Код:

 Sub Resize_Example() Range("A1").Resize(3).Select End Sub 

What this code will do is it will select only three rows including the active cell row but no extra columns.

Example #3

Use Resize To Select Unknown Ranges. Resize is best utilized when you want to select an unknown range of cells. For example, look at the below image of the data range.

It has data all the ways from Column A to Column P and row-wise we have up until the 700th row.

Assume you know your data will keep changing and you want to select the data range every now and then by manually changing the row and column number. However, by using VBA RESIZE property we can do this easily.

Look at the below code.

Code:

 Sub Resize_Example1() Dim LR As Long Dim LC As Long Worksheets("Sales Data").Select LR = Cells(Rows.Count, 1).End(xlUp).Row LC = Cells(1, Columns.Count).End(xlToLeft).Column Cells(1, 1).Resize(LR, LC).Select End Sub 

First I have declared two variables to find the last used row (LR) and last used column (LC).

 Dim LR As Long Dim LC As Long 

Since our data is in the worksheet named “Sales Data” we are choosing this worksheet by using the below code.

Worksheets(“Sales Data”).Select

Now below code will find the last used row and last used column.

LR = Cells(Rows.Count, 1).End(xlUp).Row

LC = Cells(1, Columns.Count).End(xlToLeft).Column

Now from the first cell, we resizing the range from last used row to last used column and select is the method used. So now it doesn’t matter how big your data is it will dynamically select the data by finding the last used row and last used column.

Things to Remember

  • Resize property in VBA will change the size of the range from the active cell (including the active cell as well).
  • We just need to provide how many rows and how many columns to be resized from the active cell in VBA.
  • We cannot use negative row & column number for RESIZE property.