VBA OFFSET -toiminto | Excel VBA Offset -ominaisuuden käyttäminen (esimerkki)

Excel VBA OFFSET -toiminto

VBA- siirtofunktiota käytetään siirtämään viite tai viittaamaan siihen viittaus, joka ohittaa tietyn määrän rivejä ja sarakkeita, tämän funktion argumentit VBA: ssa ovat samat kuin laskentataulukon argumentit.

Oletetaan esimerkiksi, että sinulla on joukko tietoja, kuten alla.

Nyt solusta A1 haluat siirtyä 4 solua alaspäin ja haluat valita kyseisen 5. solun eli A5-solun.

Vastaavasti, jos haluat siirtyä alaspäin A1-solusta 2 riviä ja mennä 2 saraketta oikealle ja valita kyseinen solu eli C2-solu.

Näissä tapauksissa OFFSET-toiminto on erittäin hyödyllinen. Varsinkin VBA: ssa OFFSET-toiminto on vain ilmiömäinen.

OFFSETia käytetään Range Object -sovelluksen kanssa Excel VBA: ssa

VBA: ssa emme voi suoraan kirjoittaa sanaa OFFSET. Meidän on ensin käytettävä VBA RANGE -objektia ja siitä alueobjektista voimme käyttää OFFSET-ominaisuutta.

Excel-alueella ei ole muuta kuin solu tai solualue. Koska OFFSET viittaa soluihin, meidän on ensin käytettävä objekti RANGE ja sitten voimme käyttää OFFSET-menetelmää.

OFFSETin syntakse VBA Excelissä

  • Rivin siirtymä: Kuinka monta riviä haluat siirtää valitusta solusta. Tässä valittu solu on A1 eli alue (“A1”).
  • Sarakepoikkeama: Kuinka monta saraketta haluat siirtää valitusta solusta. Tässä valittu solu on A1 eli alue (“A1”).

Esimerkkejä

Voit ladata tämän VBA OFFSET -mallin täältä - VBA OFFSET -malli

Esimerkki 1

Harkitse alla olevia tietoja esimerkiksi esittelyä varten.

Haluan nyt valita solun A6 solusta A1. Käynnistä makro- ja viitesolu Range-objektilla.

Koodi:

 Alien siirtymä_esimerkki1 () Alue ("A1"). Offset (Loppu alim 

Nyt haluan valita solun A6 eli haluan tehdä viisi solua alas. Syötä siis 5 rivinsiirron parametriksi.

Koodi:

 Ala-offset_esimerkki1 () Alue ("A1"). Offset (5 loppu-ali 

Koska valitsen samassa sarakkeessa, jätän sarakkeen osan pois. Sulje kiinnike ja aseta piste (.) Ja kirjoita menetelmä Valitse.

Koodi:

 Alien siirtymä_esimerkki1 () Alue ("A1"). Siirto (5). Valitse Lopeta ali 

Suorita nyt tämä koodi F5-näppäimellä tai voit suorittaa manuaalisesti valitaksesi solun A6 alla olevan kuvan mukaisesti.

Tuotos:

Esimerkki 2

Ota nyt samat tiedot, mutta tässä näet, kuinka myös sarakkeen offset-argumenttia käytetään. Haluan nyt valita solun C5.

Koska haluan ensin valita solun C5, haluan siirtyä 4 solua alaspäin ja ottaa oikeat 2 saraketta päästäksesi soluun C5. Alla oleva koodi tekisi työn minulle.

Koodi:

 Alien siirtymä_esimerkki2 () -alue ("A1"). Poikkeama (4, 2). 

Suoritan tämän koodin manuaalisesti tai sitten F5-näppäintä, se valitsee solun C5 alla olevan kuvakaappauksen mukaisesti.

Tuotos:

Esimerkki 3

Olemme nähneet, kuinka rivit ja sarakkeet voidaan tasata. Voimme myös valita yllä olevat solut määritetyistä soluista. Esimerkiksi, jos olet solussa A10 ja haluat valita A1-solun, miten valitset?

Jos siirrymme solusta alaspäin, voimme syöttää positiivisen luvun, joten tässä, jos siirrytään ylöspäin, meidän on syötettävä negatiiviset luvut.

A9-solusta on siirryttävä ylöspäin 8 rivillä eli -8.

Koodi:

 Alasiirto_esimerkki1 () Alue ("A9"). Poikkeama (-8) .Valitse Lopeta ala 

Jos suoritat tämän koodin F5-näppäimellä tai voit suorittaa koodin manuaalisesti, se valitsee solun A1 A9-solusta.

Tuotos:

Esimerkki 4

Oletetaan, että olet solussa C8. Tästä solusta haluat valita solun A10.

Aktiivisesta solusta eli C8-solusta meidän on ensin siirryttävä 2 riviä alaspäin ja meidän on siirryttävä vasemmalle 2 sarakkeella valitaksesi solun A10.

Jos siirryt vasemmalle sarakkeen valitsemiseksi, meidän on määritettävä, että numero on negatiivinen. Joten tässä meidän on palattava -2 sarakkeella.

Koodi:

 Alaerot_esimerkki2 () Alue ("C8"). Poikkeama (2, -2) .Valitse Lopeta ala 

Suorita nyt tämä koodi F5-näppäimellä tai suorita manuaalisesti, se valitsee A10-solun alla olevan kuvan mukaisesti:

Tuotos:

Muistettavaa

  • Jos siirrytään rivejä ylöspäin, meidän on määritettävä luku negatiivisina.
  • Jos siirryt vasemmalle sarakkeen valitsemiseksi, luvun tulee olla negatiivinen.
  • A1-solu on ensimmäinen rivi ja ensimmäinen sarake.
  • Aktiivinen solu tarkoittaa tällä hetkellä valittuja soluja.
  • Jos haluat valita solun OFFSET-toiminnolla, sinun on mainittava ”.Select”.
  • Jos haluat kopioida solun OFFSET-toiminnolla, sinun on mainittava ”.Copy”.

$config[zx-auto] not found$config[zx-overlay] not found