Какво представлява обхватът на VBA?
VBA Range Object представлява клетка или множество клетки във вашия работен лист на Excel. Това е най-важният обект на Excel VBA. Използвайки обект на обхвата на Excel VBA, можете да се обърнете към,
- Една клетка
- Ред или колона от клетки
- Избор на клетки
- 3-D диапазон
Както обсъдихме в предишния ни урок, този VBA се използва за запис и стартиране на Macro. Но как VBA идентифицира какви данни от листа трябва да бъдат изпълнени. Тук е полезен VBA Range Objects.
В този урок ще научите -
- Въведение в референтните обекти във VBA
- Обърнете се към единична клетка, като използвате свойството Worksheet.Range
- Клетъчна собственост
- Range Offset свойство
Въведение в референтните обекти във VBA
Препращане към обект на обхват на VBA на Excel и квалификатор на обекти.
- Квалификатор на обект : Използва се за препратка към обекта. Той посочва работната книга или работния лист, към който се отнасяте.
За манипулиране на тези стойности на клетки се използват свойства и методи .
- Имот: Имотът съхранява информация за обекта.
- Метод: Методът е действие на обекта, който ще извърши. Обектът обхват може да изпълнява действия като избрани, копирани, изчистени, сортирани и т.н.
VBA следва обект на йерархична структура, за да препрати обект в Excel. Трябва да следвате следната структура. Не забравяйте, че .dot overhere свързва обекта на всяко от различните нива.
Application.Workbooks.Worksheets.Range
Има два основни типа обекти по подразбиране.
Как да се обърнете към обект за обхват на Excel VBA, като използвате свойството Range
Свойството диапазон може да се приложи в два различни типа обекти.
- Обекти на работния лист
- Обхват на обекти
Синтаксис за свойство Range
- Ключовата дума „Обхват“.
- Скоби, които следват ключовата дума
- Съответна гама от клетки
- Цитат ("")
Application.Workbooks("Book1.xlsm").Worksheets("Sheet1").Range("A1")
Когато се позовавате на обект Range, както е показано по-горе, той се посочва като напълно квалифицирана референция . Казали сте на Excel точно кой диапазон искате, какъв лист и в какъв работен лист.
Пример : Работен лист на MsgBox ("лист1"). Диапазон ("А1"). Стойност
Използвайки свойството Range, можете да изпълнявате много задачи като,
- Обърнете се към единична клетка, като използвате свойството range
- Обърнете се към единична клетка, като използвате свойството Worksheet.Range
- Обърнете се към цял ред или колона
- Обърнете се към обединените клетки с помощта на свойството Worksheet.Range и много други
Като такъв ще бъде твърде дълъг, за да обхване всички сценарии за свойство range. За гореспоменатите сценарии ще покажем пример само за един. Обърнете се към единична клетка, като използвате свойството range.
Обърнете се към единична клетка, като използвате свойството Worksheet.Range
За да се отнесете към една клетка, трябва да се отнесете към една клетка.
Синтаксисът е прост "Обхват (" Клетка ")".
Тук ще използваме командата ".Select", за да изберем единичната клетка от листа.
Стъпка 1) В тази стъпка отворете вашия Excel.
Стъпка 2) В тази стъпка,
- Кликнете върху бутон.
- Ще отвори прозорец.
- Въведете името на вашата програма тук и щракнете върху бутона „OK“.
- Ще ви отведе до основния файл на Excel, от горното меню щракнете върху бутона „стоп“ за запис, за да спрете записа на макрос.
Стъпка 3) В следващата стъпка,
- Щракнете върху бутона Macro от горното меню. Ще отвори прозореца отдолу.
- В този прозорец кликнете върху бутона „редактиране“.
Стъпка 4) Горната стъпка ще отвори редактора на кода на VBA за името на файла "Single Cell Range". Въведете кода, както е показано по-долу, за да изберете диапазон "A1" от Excel.
Стъпка 5) Сега запишете файла и стартирайте програмата, както е показано по-долу.
Стъпка 6) Ще видите, че клетката "A1" е избрана след изпълнението на програмата.
По същия начин можете да изберете клетка с определено име. Например, ако искате да търсите клетка с име "Guru99- VBA Tutorial". Трябва да изпълните командата, както е показано по-долу. Той ще избере клетката с това име.
Обхват ("Урок за Guru99- VBA"). Изберете
За да приложите друг обект от обхват, тук е примерът за код.
Обхват за избор на клетка в Excel | Обявен обхват |
За единичен ред | Обхват ("1: 1") |
За единична колона | Обхват ("A: A") |
За съседни клетки | Обхват ("A1: C5") |
За несъседни клетки | Обхват ("A1: C5, F1: F5") |
За пресичане на два диапазона | Обхват ("A1: C5 F1: F5") (За пресечната клетка не забравяйте, че няма оператор със запетая) |
За обединяване на клетка | Обхват ("A1: C5") (За обединяване на клетка използвайте командата "merge") |
Клетъчна собственост
Подобно на диапазона, във VBA можете също така да "Cell Property". Единствената разлика е, че той има свойство "item", което използвате за препратка към клетките във вашата електронна таблица. Свойството Cell е полезно в програмен цикъл.
Например,
Cells.item (ред, колона). И двата реда по-долу се отнасят до клетка A1.
- Cells.item (1,1) ИЛИ
- Cells.item (1, "A")
Range Offset свойство
Свойството за изместване на обхвата ще избере редове / колони далеч от първоначалната си позиция. Въз основа на декларирания диапазон се избират клетки. Вижте пример по-долу.
Например,
Range("A1").offset(Rowoffset:=1, Columnoffset:=1).Select
Резултатът за това ще клетка B2. Свойството offset ще премести клетка A1 в 1 колона и 1 ред. Можете да промените стойността на rowoffset / columnoffset според изискванията. Можете да използвате отрицателна стойност (-1), за да преместите клетките назад.
Изтеглете Excel, съдържащ горния код
Изтеглете горния код на Excel
Резюме :
- VBA Range Object представлява клетка или множество клетки във вашия работен лист на Excel
- Една клетка
- Ред или колона от клетки
- Избор на клетки
- 3-D диапазон
- За манипулиране на стойностите на клетките се използват свойства и методи
- Имотът съхранява информация за обекта
- Методът е действие на обекта, който ще извърши като избор, обединяване, сортиране и т.н.
- VBA следва обект на йерархия на обекта, за да препраща обект в Excel с помощта на .dot оператор
- Свойството диапазон може да се приложи в два различни типа обекти
- Обекти на работния лист
- Обхват на обекти