Rozsah pomenovaných súborov Excel VBA
Keď pracujeme s veľkým množstvom údajov, aby sme sa vyhli odkazom na konkrétnu bunku alebo rozsahy buniek, zvyčajne vytvoríme pomenované rozsahy a umožní nám to odkázať na požadovaný rozsah buniek cez pomenovaný rozsah. Vo VBA na vytvorenie rozsahu mien máme funkciu Pridať meno.
Môžeme vybrať bunku alebo rozsah buniek a dať jej názov. Po pomenovaní buniek môžeme na tieto bunky odkazovať tak, že namiesto obvyklých odkazov na riadky alebo stĺpce zadáte definované názvy.
Túto šablónu programu Excel s pomenovaným rozsahom VBA si môžete stiahnuť tu - šablónu programu Excel s pomenovaným rozsahom VBAAko vytvoriť pomenované rozsahy?
Vytváranie pomenovaných rozsahov je prechádzka v parku. Prvá vec, ktorú musíme urobiť, je identifikovať bunky, ktoré chceme vytvoriť v rozsahu mien v programe Excel.
Napríklad sa pozrite na obrázok nižšie.
Aby som dosiahol zisk v bunke B4, použil som vzorec B2 - B3.
Toto je bežná vec, ktorú robí každý. Ale čo tak vytvoriť Názvy a použiť vzorec niečo ako „Predaj“ - „Cena“.
Umiestnite kurzor na bunku B2> Prejsť na pole Názov a zavolajte ho ako Predaj.
Umiestnite kurzor na bunku B3 a nazvite ju Cena.
Teraz v stĺpci zisk môžeme tieto názvy uvádzať namiesto odkazov na bunky.
Toto je základná vec o pomenovaných rozsahoch.
Ako vytvoriť pomenované rozsahy pomocou kódu VBA?
Príklad č
Napadlo vás niekedy vytvoriť pomenovaný rozsah pomocou VBA kódu?
Podľa nasledujúcich pokynov vytvorte pomenovaný rozsah.
Krok 1: Definujte premennú ako „Rozsah“.
Kód:
Sub NamedRanges_Example () Dim Rng ako rozsah End Sub
Krok 2: Teraz nastavte premennú „Rng“ na konkrétne bunky, ktoré chcete pomenovať.
Kód:
Sub NamedRanges_Example () Dim Rng As Range Set Rng = Range ("A2: A7") End Sub
Krok 3: Pomocou objektu „ThisWorkbook“ získate prístup k vlastnosti Mená.
Máme toľko parametrov s metódou Names.Add . Ďalej uvádzame vysvetlenia.
[Meno]: Meno nie je nič iné ako to, čo by sme chceli dať rozsahu, ktorý špecifikujeme.
Pri pomenovaní bunky by nemala obsahovať žiadne špeciálne znaky okrem znaku podčiarknutia (_) a rovnako by nemala obsahovať medzery, nemala by začínať číselnými hodnotami.
[Odkazuje na]: Toto nie je nič iné, ako aký je rozsah buniek, na ktoré odkazujeme.
Myslím si, že tieto dva parametre sú dosť dobré na začatie konania.
Krok 4: Do názvu zadá argument meno, ktoré chcete dať. Pomenoval som ako „Predajné čísla“.
Kód:
Sub NamedRanges_Example () Dim Rng As Range Set Rng = Range ("A2: A7") ThisWorkbook.Names.Add Name: = "SalesNumbers" End Sub
Krok 5: V argumente referencie zadajte rozsah buniek, ktoré chceme vytvoriť. V mene premennej „Rng“ sme už priradili rozsah buniek od A2 do A7, takže zadajte argument ako „Rng“.
Kód:
Sub NamedRanges_Example () Dim Rng As Range Set Rng = Range ("A2: A7") ThisWorkbook.Names.Add Name: = "SalesNumbers", RefersTo: = Rng End Sub
Dobre, tento kód vytvorí pomenovaný rozsah pre bunky od A2 po A7.
Teraz v pracovnom liste som vytvoril niekoľko čísel od A2 po A7.
In the A8 cell, I want to have the total of the above cell numbers. Using 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 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 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”.