Zoeken…


Invoering

Onderwerp moet informatie bevatten die specifiek is gerelateerd aan benoemde bereiken in Excel, inclusief methoden voor het maken, wijzigen, verwijderen en openen van gedefinieerde benoemde bereiken.

Definieer een benoemd bereik

Door benoemde bereiken te gebruiken, kunt u de betekenis van de inhoud van een cel (len) beschrijven en deze gedefinieerde naam gebruiken in plaats van een echt celadres.

Formule =A5*B5 kan bijvoorbeeld worden vervangen door =Width*Height om de formule veel gemakkelijker te lezen en te begrijpen.

Als u een nieuw benoemd bereik wilt definiëren, selecteert u een of meer cellen die u een naam wilt geven en typt u vervolgens een nieuwe naam in het vak Naam naast de formulebalk.

voer hier de afbeeldingsbeschrijving in


Opmerking: Benoemde bereiken zijn standaard ingesteld op globaal bereik, wat betekent dat ze overal in de werkmap toegankelijk zijn. Oudere versies van Excel staan dubbele namen toe, dus zorg ervoor dat dubbele namen van wereldwijde omvang worden voorkomen, anders zijn de resultaten onvoorspelbaar. Gebruik Naambeheer op het tabblad Formules om het bereik te wijzigen.

Benoemde bereiken gebruiken in VBA

Maak een nieuw benoemd bereik met de naam 'MyRange' toegewezen aan cel A1

ThisWorkbook.Names.Add Name:="MyRange", _
    RefersTo:=Worksheets("Sheet1").Range("A1")

Verwijder het gedefinieerde benoemde bereik op naam

ThisWorkbook.Names("MyRange").Delete

Toegang op naam bereik op naam

Dim rng As Range
Set rng = ThisWorkbook.Worksheets("Sheet1").Range("MyRange")
Call MsgBox("Width = " & rng.Value)

Toegang tot een benoemd bereik met een snelkoppeling

Net als elke andere range , kan benoemde bereiken rechtstreeks worden benaderd met door middel van een snelkoppeling notatie die niet over een vereist Range object moet worden gemaakt. De drie regels uit het bovenstaande codefragment kunnen worden vervangen door een enkele regel:

Call MsgBox("Width = " & [MyRange])

Opmerking: de standaardeigenschap voor een bereik is de waarde, dus [MyRange] is hetzelfde als [MyRange].Value

U kunt ook methoden in het bereik oproepen. Het volgende selecteert MyRange :

[MyRange].Select

Opmerking: een waarschuwing is dat de sneltoetsnotatie niet werkt met woorden die elders in de VBA-bibliotheek worden gebruikt. Een bereik met de naam Width zou bijvoorbeeld niet toegankelijk zijn als [Width] maar zou werken zoals verwacht als het toegankelijk is via ThisWorkbook.Worksheets("Sheet1").Range("Width")

Beheer benoemde bereiken met Name Manager

Tabblad Formules> Groep gedefinieerde namen> Knop Naambeheer

Met Named Manager kunt u:

  1. Naam maken of wijzigen
  2. Celverwijzing maken of wijzigen
  3. Scope maken of wijzigen
  4. Verwijder bestaand benoemd bereik

voer hier de afbeeldingsbeschrijving in


Named Manager biedt een handig overzicht voor verbroken koppelingen.

voer hier de afbeeldingsbeschrijving in

Genoemde bereikmatrices

Voorbeeldblad

voer hier de afbeeldingsbeschrijving in


Code

Sub Example()
    Dim wks As Worksheet
    Set wks = ThisWorkbook.Worksheets("Sheet1")
    
    Dim units As Range
    Set units = ThisWorkbook.Names("Units").RefersToRange
    
    Worksheets("Sheet1").Range("Year_Max").Value = WorksheetFunction.Max(units)
    Worksheets("Sheet1").Range("Year_Min").Value = WorksheetFunction.Min(units)
End Sub

Resultaat

voer hier de afbeeldingsbeschrijving in



Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow