See õpetus näitab, kuidas VBA -s Activecell Offsetit kasutada.
ActiveCell on VBA omadus, mis esindab teie töölehe aktiivse lahtri aadressi. Kui hiirekursor asub lahtris A1, tagastab VBA ActiveCelli atribuut lahtri aadressi „A1”. Need on mitmed atribuudid ja meetodid, mis on ActiveCelliga ühendatud. Selles artiklis keskendume ActiveCell.Offset meetodile.
ActiveCell. Offset omadused ja meetodid
Activecell.Offsetil on mitmeid omadusi ja meetodeid, mida saab VBA abil programmeerida. Saadaolevate atribuutide ja meetodite vaatamiseks tippige järgmine käsk alltoodud viisil ja vajutage ripploendi kuvamiseks klaviatuuri punktiklahvi.
Meetodeid kujutab roheline meetodiikoon ja atribuute väikese käe ikoon. Activecell.Offset meetodi omadused ja meetodid on samad mis Activecell meetodil.
ActiveCell. Offset Syntax
Activecell.Offset süntaks on järgmine
kus RowOffset ja ColumnOffset on nihutatavate ridade arv (positiivsed numbrid allapoole, negatiivsed numbrid ülespoole) või veergude arv, mida soovite nihutada (positiivsed arvud nihutatakse paremale, negatiivne arv vasakule).
ActiveCell.Offset… Valige
The Activecell.Offset… Valige meetod on Activecell.Offset meetodiga kõige sagedamini kasutatav meetod. See võimaldab teil liikuda töölehe teise lahtrisse. Selle meetodi abil saate liikuda töölehel veergude vahel või üles või alla.
Reas allapoole liikumiseks, kuid jääge samasse veergu:
1 | Activecell. Offset (1,0). Valige |
Veerus liikumiseks, kuid jääge samale reale:
1 | Activecell. Offset (0,1). Valige |
Reas allapoole ja üle veeru liikumiseks tehke järgmist.
1 | Activecell. Offset (1,1). Valige |
Reas ülespoole liikumiseks tehke järgmist.
1 | Activecell. Offset (-1,0). Valige |
Veeru vasakule teisaldamiseks tehke järgmist.
1 | Activecell. Offset (0, -1). Valige |
Allpool toodud protseduuri käigus liigume läbi lahtrite vahemiku ja liigume silmust tehes ühe rea võrra allapoole ja üle ühe veeru:
12345678 | Sub ActiveCellTest ()Dim x täisarvunaVahemik ("A1"). ValigeX = 1 kuni 10ActiveCell = xActiveCell. Offset (1, 1). ValigeJärgmine xEnd Sub |
Selle tulemus on näidatud alloleval graafikul:
Loop paneb i väärtuse (1-10) Activecellja seejärel kasutab see Activecell. Nihe atribuut, et liikuda ühe rea võrra allapoole ja üle ühe veeru paremale - korrata seda tsüklit 10 korda.
VBA programmeerimine | Koodigeneraator töötab teie jaoks!
Vahemiku objekti kasutamine koos Activecelliga. Nihke valik
Vahemiku objekti kasutamine aktiivse lahtriga võib mõnikord mõned inimesed segadusse ajada.
Kaaluge järgmist protseduuri:
1234 | Sub ActiveCellOffsetRange ()Vahemik ("B1: B10"). ValigeActiveCell.Offset (1, 1). Vahemik ("A1"). ValigeEnd Sub |
Rakendusega ActiveCell.Offset (1,1Range (“A1”) on määratud vahemik (“A1”). See aga ei tähenda, et lehe lahtrit A1 valitakse. Kuna oleme vahemiku määranud (“B1: B10”), selle vahemiku lahter A1 on tegelikult töövihiku lahter B1. Seetõttu nihutatakse lahtrit 1 rea ja 1 veeru võrra lahter B1 EI OLE lahtrist A1.
Seetõttu ei ole antud juhul vahemik (“A1”) kohustuslik, kuna makro töötab samamoodi nii selle kui ka ilma selleta.
Alternatiivid ActiveCellile
Selle asemel, et kasutada Activecellit nihke meetodiga, saame kasutada ka objekti Range koos nihke meetodiga.
123 | Alamvahemik Offset ()Vahemik ("B1"). Nihe (0, 1). ValigeEnd Sub |
Ülaltoodud protseduur valiks töölehel lahtri C1.