Excel VBA-bereikobject
Wat is VBA-bereik?
Het VBA-bereikobject vertegenwoordigt een cel of meerdere cellen in uw Excel-werkblad. Het is het belangrijkste object van Excel VBA. Door het Excel VBA-bereikobject te gebruiken, kunt u verwijzen naar:
- Een enkele cel
- Een rij of een kolom met cellen
- Een selectie van cellen
- Een 3D-bereik
Zoals we in onze vorige tutorial hebben besproken, wordt VBA gebruikt om Macro op te nemen en uit te voeren. Maar hoe VBA identificeert welke gegevens uit het blad moeten worden uitgevoerd. Dit is waar VBA Range Objects nuttig is.
Inleiding tot het verwijzen naar objecten in VBA
Verwijzen naar het VBA-bereikobject van Excel en de objectkwalificatie.
- Objectkwalificatie: Dit wordt gebruikt om naar het object te verwijzen. Het specificeert de werkmap of het werkblad waarnaar u verwijst.
Om deze celwaarden te manipuleren, Eigendommen en Methoden worden gebruikt.
- Eigendom: Een eigenschap slaat informatie over het object op.
- Werkwijze: Een methode is een actie van het object dat deze zal uitvoeren. Bereikobject kan acties uitvoeren zoals geselecteerd, gekopieerd, gewist, gesorteerd, enz.
VBA volgt het objecthiërarchiepatroon om naar een object in Excel te verwijzen. U moet de volgende structuur volgen. Onthoud dat de .dot hier het object op elk van de verschillende niveaus verbindt.
Toepassing.Werkboeken.Werkbladen.Bereik
Er zijn twee hoofdtypen standaardobjecten.
Hoe u naar Excel VBA Range Object kunt verwijzen met behulp van de eigenschap Range
De eigenschap Range kan op twee verschillende typen objecten worden toegepast.
- Werkbladobjecten
- Bereikobjecten
Syntaxis voor bereikeigenschap
- Het zoekwoord 'Bereik'.
- Haakjes na het trefwoord
- Relevant celbereik
- Offerte (" ")
Application.Workbooks("Book1.xlsm").Worksheets("Sheet1").Range("A1")
Wanneer u naar het Range-object verwijst, zoals hierboven weergegeven, wordt ernaar verwezen als volledig gekwalificeerde referentie. U hebt Excel precies verteld welk bereik u wilt, welk blad en in welk werkblad.
Voorbeeld: BerichtBox Werkblad(“blad1”).Bereik(“A1”).Waarde
Met behulp van de eigenschap Range kunt u veel taken uitvoeren, zoals:
- Verwijs naar een enkele cel met behulp van de bereikeigenschap
- Verwijs naar een enkele cel met behulp van de eigenschap Worksheet.Range
- Verwijs naar een volledige rij of kolom
- Raadpleeg samengevoegde cellen met behulp van de eigenschap Worksheet.Range en nog veel meer
Als zodanig zal het te lang duren om alle scenario's voor bereikeigendom te behandelen. Voor de hierboven genoemde scenario's zullen we slechts één voorbeeld demonstreren. Verwijs naar een enkele cel met behulp van de bereikeigenschap.
Verwijs naar een enkele cel met behulp van de eigenschap Worksheet.Range
Om naar een enkele cel te verwijzen, moet u naar een enkele cel verwijzen.
Syntaxis is eenvoudig "Bereik ("Cel")".
Hier gebruiken we de opdracht ".Select" om de enkele cel van het blad te selecteren.
Stap 1) Open in deze stap uw Excel.
Stap 2) In deze stap,
- Klik op
knop.
- Er wordt een venster geopend.
- Voer hier uw programmanaam in en klik op de knop 'OK'.
- U gaat naar het Excel-hoofdbestand. Klik in het bovenste menu op de opnameknop 'stop' om de opname van Macro te stoppen.
Stap 3) In de volgende stap,
- Klik op de Macro-knop
vanuit het bovenste menu. Het onderstaande venster wordt geopend.
- In dit venster klikt u op de knop 'Bewerken'.
Stap 4) De bovenstaande stap opent de VBA-code-editor voor de bestandsnaam "Single Cell Range". Voer de code in zoals hieronder weergegeven om bereik “A1” uit Excel te selecteren.
Stap 5) Sla nu het bestand op en voer het programma uit zoals hieronder weergegeven.
Stap 6) U zult zien dat cel “A1” is geselecteerd na uitvoering van het programma.
Op dezelfde manier kunt u een cel met een bepaalde naam selecteren. Bijvoorbeeld, als u een cel met de naam "Guru99- VBA Tutorial" wilt zoeken, moet u de opdracht uitvoeren zoals hieronder weergegeven. Het zal de cel met die naam selecteren.
Bereik ("Guru99-VBA-tutorial").Selecteer
Om hier een ander bereikobject toe te passen, is het codevoorbeeld.
Bereik voor het selecteren van cellen in Excel | Bereik verklaard |
---|---|
Voor enkele rij | Bereik(“1:1”) |
Voor enkele kolom | Bereik(“A: A”) |
Voor aangrenzende cellen | Bereik(“A1:C5”) |
Voor niet-aangrenzende cellen | Bereik(“A1:C5, F1:F5”) |
Voor snijpunt van twee bereiken | Bereik(“A1:C5 F1:F5”)
(Denk eraan dat er voor doorsnedecellen geen komma-operator is) |
Cel samenvoegen | Bereik(“A1:C5”)
(Om cellen samen te voegen, gebruikt u de opdracht “samenvoegen”) |
Celeigenschap
Vergelijkbaar met het bereik, in VBA u kunt ook "Celeigenschap" gebruiken. Het enige verschil is dat het een ‘item’-eigenschap heeft die u gebruikt om naar de cellen in uw spreadsheet te verwijzen. Celeigenschap is nuttig in een programmeerlus.
Bijvoorbeeld
Cellen.item(Rij, Kolom). Beide onderstaande regels verwijzen naar cel A1.
- Cellen.item(1,1) OF
- Cellen.item(1,”A”)
Bereik Offset-eigenschap
De eigenschap Range offset selecteert rijen/kolommen weg van de oorspronkelijke positie. Op basis van het aangegeven bereik worden cellen geselecteerd. Zie voorbeeld hieronder.
Bijvoorbeeld
Range("A1").offset(Rowoffset:=1, Columnoffset:=1).Select
Het resultaat hiervoor is cel B2. De eigenschap Offset verplaatst cel A1 naar 1 kolom en 1 rij verder. U kunt de waarde van rowoffset / columnoffset naar wens wijzigen. U kunt een negatieve waarde (-1) gebruiken om cellen naar achteren te verplaatsen.
Download Excel met bovenstaande code
Download de bovenstaande Excel-code
Samenvatting
- Het VBA-bereikobject vertegenwoordigt een cel of meerdere cellen in uw Excel-werkblad
- Een enkele cel
- Een rij of een kolom met cellen
- Een selectie van cellen
- Een 3D-bereik
- Om celwaarden te manipuleren, Eigendommen en Methoden worden gebruikt
- Een eigenschap slaat informatie over het object op
- Een methode is een actie van het object dat het zal uitvoeren, zoals selecteren, samenvoegen, sorteren, enz.
- VBA volgt het objecthiërarchiepatroon om naar een object in Excel te verwijzen met behulp van de .dot-operator
- De eigenschap Range kan op twee verschillende typen objecten worden toegepast
- Werkbladobjecten
- Bereikobjecten