VBA benoemd bereik

Excel VBA benoemd bereik

Wanneer we met een grote hoeveelheid gegevens werken om te vermijden dat we verwijzen naar een bepaalde cel of celbereiken, maken we meestal benoemde bereiken aan en kunnen we door het benoemde bereik naar het vereiste celbereik verwijzen. In VBA om een ​​naambereik te maken, hebben we de functie Naam toevoegen.

We kunnen een cel of celbereik selecteren en er een naam aan geven. Nadat we de cellen een naam hebben gegeven, kunnen we naar die cellen verwijzen door die gedefinieerde namen in te voeren in plaats van de gebruikelijke rij- of kolomverwijzingen.

U kunt deze VBA Named Range Excel-sjabloon hier downloaden - VBA Named Range Excel-sjabloon

Hoe benoemde bereiken te maken?

Het is een wandeling in het park om benoemde bereiken te maken. Het eerste dat we moeten doen, is de cellen identificeren die we naambereik in Excel willen maken.

Kijk voor een voorbeeld naar de onderstaande afbeelding.

Om de winst in cel B4 te krijgen, heb ik de formule B2 - B3 toegepast.

Dit is het gewone dat iedereen doet. Maar hoe zit het met het maken van de namen en het toepassen van de formule zoiets als "Verkoop" - "Kosten".

Plaats een cursor op de cel B2> Ga naar naam en noem het als Verkoop.

Plaats een cursor op de B3-cel en noem deze Kosten.

Nu kunnen we in de winstkolom naar deze namen verwijzen in plaats van naar celverwijzingen.

Dit is de basis van benoemde bereiken.

Hoe benoemde bereiken te maken met VBA-code?

Voorbeeld 1

Heb je er ooit aan gedacht om een ​​benoemd bereik te maken met VBA-code?

Volg de onderstaande stappen om een ​​benoemd bereik te maken.

Stap 1: Definieer de variabele als "Bereik".

Code:

 Sub NamedRanges_Example () Dim Rng As Range End Sub 

Stap 2: Stel nu de variabele "Rng" in op specifieke cellen die u een naam wilt geven.

Code:

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

Stap 3: Gebruik het object "ThisWorkbook" om toegang te krijgen tot Names Property.

We hebben zoveel parameters met de methode Names.Add . Hieronder staan ​​de toelichtingen.

[Naam]: Naam is niets anders dan wat is de naam die we willen geven aan het bereik dat we specificeren.

Bij het benoemen van de cel mag deze geen speciale tekens bevatten behalve het onderstrepingsteken (_) en mag hij ook geen spaties bevatten, hij mag niet beginnen met numerieke waarden.

[Verwijst naar]: dit is niets anders dan de reeks cellen waarnaar we verwijzen.

Ik denk dat deze twee parameters goed genoeg zijn om de procedure te starten.

Stap 4: In de naam voert argument de naam in die u wilt geven. Ik heb genoemd als "SalesNumbers".

Code:

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

Stap 5: Voer in het argument verwijst naar het celbereik in dat we willen maken. In de naam van de variabele "Rng" hebben we het celbereik al toegewezen als A2 tot A7, dus geef het argument op als "Rng".

Code:

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

Oké, deze code maakt een benoemd bereik voor cellen van A2 tot A7.

Nu heb ik in het werkblad enkele getallen gemaakt van A2 tot A7.

In de A8-cel wil ik het totaal van de bovenstaande celnummers hebben. Met het benoemde bereik maken we een SOM van deze nummers.

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 

Als u deze code handmatig uitvoert of door op f5 te drukken, krijgen we het totaal van een benoemd bereik in cel A8.

Dit zijn de basisfeiten die u moet weten over "Named Ranges".

Voorbeeld # 2

In VBA met behulp van het RANGE-object kunnen we naar de cellen verwijzen. Evenzo kunnen we ook naar die cellen verwijzen door ook benoemde bereiken te gebruiken.

In het bovenstaande voorbeeld hebben we de cel B2 bijvoorbeeld "Verkoop" en B3 als "Kosten" genoemd .

Door werkelijke celverwijzing te gebruiken, verwijzen we op deze manier naar die cellen.

Code:

 Sub NamedRanges () Bereik ("B2"). Selecteer 'Hiermee selecteert u het B2-celbereik ("B3"). Selecteer' Hiermee selecteert u de B3-cel End Sub 

Omdat we deze cellen al hebben gemaakt, kunnen we verwijzen naar het gebruik van die namen zoals hieronder.

Code:

 Sub NamedRanges () Bereik ("Verkoop"). Selecteer 'Dit selecteert de cel met de naam "Verkoop", dwz B2-celbereik ("Kosten"). Selecteer' Dit selecteert een cel met de naam "Kosten", dwz B3-cel End Sub 

Zoals dit met benoemde bereiken, kunnen we gebruik maken van die cellen. Met behulp van deze namen kunnen we het winstbedrag in cel B4 berekenen. Noem voor deze voornaam de cel B4 als Winst.

Pas deze code nu toe in de VBA-editor.

Code:

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

Dit berekent het winstbedrag in de cel met de naam "Winst".