Обхват на име VBA - Как да създам и използвам именувани диапазони?

Име на обхвата на Excel VBA

Когато работим с голямо количество данни, за да избегнем препратки към определена клетка или диапазони от клетки, обикновено създаваме именувани диапазони и това ни позволява да се позоваваме на необходимия диапазон на клетки през посочения диапазон. Във VBA за създаване на диапазон от имена имаме функция за добавяне на име.

Можем да изберем клетка или диапазон от клетки и да й дадем име. След именуването на клетките можем да се позовем на тези клетки, като въведем тези дефинирани имена вместо обичайни референции на редове или колони.

Как да създадете именувани диапазони?

Това е разходка в парка, за да създадете имена на диапазони. Първото нещо, което трябва да направим, е да идентифицираме клетките, които искаме да създадем диапазон от имена в Excel.

Например погледнете изображението по-долу.

За да стигна до печалбата в клетка B4, аз приложих формулата B2 - B3.

Това е често срещаното нещо, което всеки прави. Но какво ще кажете да създадете имената и да приложите формулата нещо като „Продажби“ - „Разходи“.

Поставете курсор в клетката B2> Отидете в полето Име и го наречете Продажби.

Поставете курсор върху клетката B3 и го наречете Cost.

Сега в колоната печалба можем да препращаме тези имена вместо препратки към клетки.

Това е основното нещо за Named Ranges.

Как да създам именувани диапазони с помощта на VBA код?

Пример # 1

Мислили ли сте някога да създадете именен диапазон с помощта на VBA код?

Следвайте стъпките по-долу, за да създадете именен диапазон.

Стъпка 1: Определете променливата като „Обхват“.

Код:

Sub NamedRanges_Example () Dim Rng As Range End Sub

Стъпка 2: Сега задайте променливата „Rng“ на конкретни клетки, които искате да назовете.

Код:

Sub NamedRanges_Example () Dim Rng As Range Set Rng = Range ("A2: A7") End Sub

Стъпка 3: Използване на обекта “ThisWorkbook” има достъп до Свойството на имената.

Имаме толкова много параметри с метода Names.Add . По-долу са обясненията.

(Име): Името е нищо, но какво име бихме искали да дадем на диапазона, който посочваме.

Докато именувате клетката, тя не трябва да съдържа никакви специални символи с изключение на символа за подчертаване (_) и не трябва да съдържа и интервали. Не трябва да започва с числови стойности.

(Отнася се за): Това не е нищо друго, освен какъв е обхватът на клетките, за които говорим.

Мисля, че тези два параметъра са достатъчно добри, за да започне производството.

Стъпка 4: В името аргументът въвежда името, което искате да дадете. Назовах като „SalesNumbers“.

Код:

Sub NamedRanges_Example () Dim Rng As Range Set Rng = Range ("A2: A7") ThisWorkbook.Names.Add Name: = "SalesNumbers" End Sub

Стъпка 5: В се отнася до аргумент, въведете диапазона от клетки, които искаме да създадем. В името на променливата „Rng“ вече сме задали диапазона от клетки като A2 до A7, така че предоставете аргумента като „Rng“.

Код:

Sub NamedRanges_Example () Dim Rng As Range Set Rng = Range ("A2: A7") ThisWorkbook.Names.Add Name: = "SalesNumbers", RefersTo: = Rng End Sub

Добре, този код ще създаде именован диапазон за клетки от A2 до A7.

Сега в работния лист създадох някои числа от A2 до A7.

In the A8 cell, I want to have the total of the above cell numbers. Using the named range, we will create a SUM of these numbers.

Code:

Sub NamedRanges_Example() Dim Rng As Range Set Rng = Range("A2:A7") ThisWorkbook.Names.Add Name:="SalesNumbers", RefersTo:=Rng Range("A8").Value = WorksheetFunction.Sum(Range("SalesNumbers")) End Sub

If you run this code manually or by pressing the f5 key then, we will get the total of a named range in cell A8.

This is the basic must-know facts about “Named Ranges.”

Example #2

In VBA using RANGE object, we can refer to the cells. Similarly, we can also refer to those cells by using named ranges as well.

For example, in the above example, we have named the cell B2 as “Sales” and B3 as “Cost.”

By using actual cell reference, we refer to those cells like this.

Code:

Sub NamedRanges() Range("B2").Select 'This will select the B2 cell Range("B3").Select 'This will select the B3 cell End Sub

Since we already created these cells, we can refer to using those names like below.

Code:

Sub NamedRanges() Range("Sales").Select 'This will select cell named as "Sales" i.e. B2 cell Range("Cost").Select 'This will select cell named as "Cost" i.e. B3 cell End Sub

Like this, using Named Ranges, we can make use of those cells. Using these names, we can calculate the profit amount in cell B4. For this first name, the cell B4 as Profit.

Now in the VBA editor, apply this code.

Code:

Sub NamedRanges_Example1() Range("Profit").Value = Range("Sales") - Range("Cost") End Sub

Това ще изчисли сумата на печалбата в клетката, наречена „Печалба“.

Интересни статии...