Hoe offset gebruiken met het bereikobject in vba?
Door OFFSET te gebruiken met het bereikobject, kunt u van cel naar cel in het werkblad navigeren en kunt u ook een cel of bereik selecteren. Het geeft je ook toegang tot de eigenschappen en methoden die je hebt met het bereikobject dat je wilt gebruiken, maar je moet de argumenten in OFFSET opgeven om het te kunnen gebruiken.
OFFSET gebruiken met het object Bereik
- Geef het bereik op waarmee u wilt beginnen.
- Voer een punt (.) in om een lijst met eigenschappen en methoden te krijgen.
- Selecteer de offset-eigenschap en geef de argumenten op (rij en kolom).
- Selecteer aan het einde de eigenschap die u met de offset wilt gebruiken.
Selecteer een bereik met OFFSET
U kunt ook een bereik selecteren dat het aantal rijen en kolommen verwijderd van een bereik is. Neem de onderstaande coderegel, waarmee een bereik van twee cellen wordt geselecteerd, bestaande uit vijf rijen naar beneden en drie kolommen naar rechts.
Range("A1:A2").Offset(3, 2).Select
Daarnaast kunt u ook code schrijven om het bereik te selecteren met een aangepast formaat. Beschouw een voorbeeld van de volgende code.
Range(Range("A1").Offset(1, 1), Range("A1").Offset(5, 2)).Select
Om deze code te begrijpen, moet je deze in drie delen verdelen.
Allereerst heeft u in dit bereikobject de mogelijkheid om de eerste en laatste cel van het bereik op te geven.
Laten we nu terugkeren naar het voorbeeld:
- In deel EEN gebruikte u het bereikobject om te verwijzen naar de cel één rij lager en één kolom rechts van cel A1.
- In deel TWEE gebruikte je het bereikobject om te verwijzen naar de cel vijf rijen lager en twee kolommen rechts van cel A1.
- In het DERDE deel gebruikte je de cellen in het eerste en tweede deel om naar een bereik te verwijzen en deze te selecteren.
OFFSET gebruiken met ActiveCell
U kunt ook de actieve cel gebruiken in plaats van een vooraf gedefinieerd bereik. Dit betekent dat u een dynamische offset krijgt om een cel te selecteren die vanuit de actieve cel navigeert.
ActiveCell.Offset(5, 2).Select
De bovenstaande coderegel selecteert de cel die vijf rijen lager ligt en twee kolommen rechts van de actieve cel.
OFFSET gebruiken met ActiveCell om een bereik te selecteren
Gebruik de volgende code om een bereik in de actieve cel te selecteren.
Range(ActiveCell.Offset(1, 1), ActiveCell.Offset(5, 2)).Select
Bekijk deze uitleg om te begrijpen hoe deze code werkt.
Kopieer een bereik met OFFSET
Range(Range("A1").Offset(1, 1), Range("A1").Offset(5, 2)).Copy Range(ActiveCell.Offset(1, 1), ActiveCell.Offset(5, 2)).Copy
De eigenschap Cells gebruiken met OFFSET
U kunt de eigenschap OFFSET ook gebruiken met de eigenschap CELLS. Beschouw de volgende code.
Cells(1, 3).Offset(2, 3).Select
De bovenstaande code verwijst eerst naar cel A1 (zoals u hebt opgegeven) met de eerste rij en eerste kolom met behulp van de eigenschap cellen, en gebruikt vervolgens de eigenschap offset om de cel te selecteren die zich twee rijen lager bevindt en drie kolommen heeft.