VBA Nume Range | Cum se creează și se utilizează game numite?

Gama denumită VBA Excel

Când lucrăm cu o cantitate mare de date pentru a evita referirea la o anumită celulă sau intervale de celule, de obicei creăm intervale denumite și ne permite să ne referim la intervalul de celule necesar prin intervalul numit. În VBA pentru a crea gama de nume avem funcția Adăugare nume.

Putem selecta o celulă sau o gamă de celule și îi putem da un nume. După denumirea celulelor, ne putem referi la acele celule introducând acele nume definite în loc de referințe obișnuite de rând sau coloană.

Puteți descărca acest șablon Excel VBA Named Range aici - Șablon Excel VBA Named Range

Cum se creează game numite?

Este o plimbare în parc să creezi intervale numite. Primul lucru pe care trebuie să-l facem este să identificăm celulele pe care dorim să le creăm în Excel.

Pentru un exemplu, uitați-vă la imaginea de mai jos.

Pentru a obține profitul în celula B4 am aplicat formula B2 - B3.

Acesta este lucrul obișnuit pe care îl face toată lumea. Dar ce zici de crearea Numelor și de a aplica formula ceva de genul „Vânzări” - „Cost”.

Plasați un cursor pe celula B2> Accesați caseta Nume și apelați-l ca Vânzări.

Plasați un cursor pe celula B3 și numiți-l Cost.

Acum, în coloana de profit, putem face referire la aceste nume în loc de referințe la celule.

Acesta este lucrul de bază despre Named Ranges.

Cum se creează game numite folosind codul VBA?

Exemplul nr. 1

V-ați gândit vreodată să creați un interval numit folosind codul VBA?

Urmați pașii de mai jos pentru a crea o gamă denumită.

Pasul 1: Definiți variabila ca „Range”.

Cod:

 Sub NamedRanges_Example () Dim Rng As Range End Sub 

Pasul 2: Setați acum variabila „Rng” la anumite celule pe care doriți să le denumiți.

Cod:

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

Pasul 3: Utilizarea obiectului „ThisWorkbook” accesează obiectul Properties Properties.

Avem atât de mulți parametri cu metoda Names.Add . Mai jos sunt explicațiile.

[Nume]: Nume nu este altceva decât care este numele pe care am dori să-l dăm intervalului specificat.

În timp ce denumiți celula, nu ar trebui să conțină caractere speciale, cu excepția simbolului de subliniere (_) și nu ar trebui să conțină și caractere spațiale, nu ar trebui să înceapă cu valori numerice.

[Se referă la]: Aceasta nu este altceva decât care este gama de celule la care ne referim.

Cred că acești doi parametri sunt suficient de buni pentru a începe procesul.

Pasul 4: În nume, argumentul introduce numele pe care doriți să îl dați. Am denumit „Numere de vânzare”.

Cod:

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

Pasul 5: În argumentul referitor la introduceți intervalul de celule pe care dorim să le creăm. În numele variabilei „Rng” am atribuit deja intervalul de celule ca A2 la A7, deci furnizați argumentul ca „Rng”.

Cod:

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

Bine, acest cod va crea un interval denumit pentru celulele de la A2 la A7.

Acum, în foaia de lucru, am creat câteva numere de la A2 la A7.

În celula A8, vreau să am totalul numerelor de celule de mai sus. Folosind intervalul denumit, vom crea o SUMĂ a acestor numere.

Cod:

 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 ( „Numere vânzări”)) Sfârșit Sub 

Dacă rulați acest cod manual sau apăsând tasta f5 atunci, vom obține totalul unui interval numit în celula A8.

Acesta este elementul de bază care trebuie știut despre „Nume Ranges”.

Exemplul nr. 2

În VBA folosind obiectul RANGE, ne putem referi la celule. În mod similar, ne putem referi și la acele celule folosind și intervale denumite.

De exemplu, în exemplul de mai sus, am numit celula B2 ca „Vânzări” și B3 ca „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 the 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 named 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 

This will calculate the profit amount in the cell named “Profit”.