VBA-reeks instellen - Gids voor het instellen van een celbereik in Excel VBA-code

Bereik instellen in Excel VBA

Bereik instellen in vba betekent dat we een bepaald bereik specificeren voor de code of de procedure die moet worden uitgevoerd, als we geen specifiek bereik voor een code opgeven, wordt automatisch het bereik overgenomen van het werkblad met de actieve cel, dus het is erg belangrijk in de code om bereikvariabele in te stellen.

Na zoveel jaren met Excel te hebben gewerkt, moet u hebben begrepen dat al het werk dat we doen zich op het werkblad bevindt, en in werkbladen zijn het cellen die de gegevens bevatten. Dus als je met gegevens wilt spelen, moet je een gedragspatroon van cellen in werkbladen zijn. Dus wanneer de meerdere cellen bij elkaar komen, wordt het een BEREIK. Om VBA te leren, moet u alles weten over cellen en bereiken. In dit artikel laten we u daarom in detail zien hoe u het celbereik instelt dat kan worden gebruikt voor VBA-codering.

Wat is het Range-object?

Bereik in VBA wordt een object genoemd. Een bereik kan een enkele cel, meerdere cellen, een rij of kolom, enz. Bevatten …

In VBA kunnen we het bereik classificeren zoals hieronder.

"Toepassing >>> Werkboek >>> Werkblad >>> Bereik"

Eerst hebben we toegang tot de applicatie nodig. Vervolgens moeten we hieronder verwijzen naar welke werkmap we verwijzen, en in de werkmap verwijzen we naar welk werkblad we verwijzen, en dan in het werkblad moeten we het celbereik vermelden.

Met behulp van het celbereik kunnen we de waarde van de cel of cellen invoeren, we kunnen waarden uit de cel of cellen lezen of ophalen, we kunnen verwijderen, we kunnen opmaken en we kunnen ook veel andere dingen doen.

Hoe toegang krijgen tot een celbereik in Excel VBA?

Bij VBA-codering kunnen we naar de cel verwijzen door de eigenschap VBA CELLS en het RANGE-object te gebruiken. Als u bijvoorbeeld naar de cel A1 wilt verwijzen, zullen we eerst het RANGE-object zien.

Binnen de subprocedure moeten we eerst het RANGE-object openen.

Code:

Sub Range_Examples () Bereik (End Sub

Zoals je hierboven kunt zien, vraagt ​​het RANGE-object naar wat de cel is waarnaar we verwijzen. We moeten het celadres dus tussen dubbele aanhalingstekens invoeren.

Code:

Sub Range_Examples () Bereik ("A1") End Sub

Zodra het celadres is opgegeven, moeten we beslissen wat we met deze cel willen doen door eigenschappen en methoden te gebruiken. Plaats nu een punt om de eigenschappen en methoden van het RANGE-object te zien.

Als we de waarde in de cel willen invoegen, moeten we de eigenschap "Waarde" kiezen.

Code:

Sub Range_Examples () Bereik ("A1") Waarde End Sub

Om de waarde in te stellen, moeten we een gelijkteken plaatsen en de waarde invoeren die we in cel A1 willen invoegen.

Code:

Sub Range_Examples () Bereik ("A1"). Value = "Excel VBA-klasse" End Sub

Voer de code door de run-optie en zie de magie in cel A1.

Zoals vermeld in de code, hebben we de waarde in cel A1.

Evenzo kunnen we naar de cel verwijzen door ook de eigenschap CELLS te gebruiken. Open de eigenschap CELLS en bekijk de syntaxis.

Dit is in tegenstelling tot het RANGE-object, waar we het celadres rechtstreeks tussen dubbele aanhalingstekens kunnen invoeren. We moeten eerder een rijnummer en kolom opgeven om naar de cel te verwijzen. Omdat we verwijzen naar de cel A1, kunnen we zeggen dat de rij 1 is en de kolom 1.

Nadat we het celadres hebben vermeld, kunnen we eigenschappen en methoden gebruiken om met cellen te werken. Maar het probleem is hier anders dan het bereikobject na het plaatsen van een punt. We krijgen de IntelliSense-lijst niet te zien.

U moet dus een expert zijn om naar de cellen te verwijzen met behulp van de eigenschap CELLS.

Code:

Sub CELLS_Examples () Cellen (1, 1) .Value = "Excel VBA Class" End Sub

Toegang tot meerdere cellen en referentiebereik instellen in VBA

Een van de grote verschillen tussen CELLS & RANGE is het gebruik van CELLS. We hebben toegang tot slechts één cel, maar gebruiken RANGE. We hebben ook toegang tot meerdere cellen.

Als we bijvoorbeeld voor de cellen A1 tot en met B5 de waarde 50 willen, kunnen we de code schrijven zoals hieronder.

Code:

Sub Range_Examples () Bereik ("A1: B5"). Waarde = 50 End Sub

Hiermee wordt de waarde 50 van cel A1 tot en met B5 ingevoegd.

In plaats van rechtstreeks naar de cellen te verwijzen, kunnen we de variabele gebruiken om de verwijzing naar gespecificeerde cellen vast te houden.

Definieer eerst de variabele als het object "Bereik".

Code:

Sub Range_Examples () Dim Rng As Range End Sub

Zodra de variabele is gedefinieerd als het "Bereik" -object, moeten we de referentie voor deze variabele instellen over waar de celadressen de verwijzing naar zullen bevatten.

Om de referentie in te stellen, moeten we het sleutelwoord "SET" gebruiken en de celadressen invoeren met behulp van het RANGE-object.

Code:

Sub Range_Examples () Dim Rng As Range Set Rng = Range ("A1: B5") End Sub

Nu verwijst de variabele "Rng" naar de cellen A1 tot B5.

In plaats van het celadresbereik ("A1: B5") te schrijven, kunnen we eenvoudig de variabelenaam "Rng" gebruiken.

Code:

Sub Range_Examples () Dim Rng As Range Set Rng = Range ("A1: B5") Rng.Value = "Bereikinstelling" End Sub

Dit zal nu de genoemde waarde invoegen van A1-cel naar B5-cel.

Stel dat u wilt dat de geselecteerde cel een verwijzing is, dan kunnen we de verwijzing als volgt instellen.

Code:

Sub Range_Examples () Dim Rng As Range Set Rng = Selectie Rng.Value = "Bereikinstelling" End Sub

Dit is een schoonheid, want als ik een van de cellen selecteer en voer, wordt de waarde ook in die cellen ingevoegd.

Ik zal bijvoorbeeld bepaalde cellen selecteren.

Nu zal ik de code uitvoeren en kijken wat er gebeurt.

Voor alle geselecteerde cellen is de waarde ingevoegd.

Op deze manier kunnen we de bereikreferentie instellen door variabelen in VBA te declareren.

Dingen om te onthouden

  • Het bereik kan meerdere cellen selecteren, maar CELLS kan één cel tegelijk selecteren.
  • RANGE is een object en CELLS is eigendom.
  • Elke objectvariabele moet als referentie van het object worden ingesteld met het sleutelwoord SET.

Interessante artikelen...