Funcția VBA OFFSET - Cum se utilizează proprietatea Excel VBA Offset (exemplu)

Funcția Excel VBA OFFSET

Funcția VBA Offset este utilizată pentru a muta sau a face referire la o referință sărind un anumit număr de rânduri și coloane, argumentele pentru această funcție în VBA sunt aceleași ca și argumentele din foaia de lucru.

De exemplu, să presupunem că aveți un set de date precum cel de mai jos.

Acum , de la celula A1, pe care doriți să mutați în jos 4 celule, și doriți să selectați că 5 mii de celule, de exemplu, celula A5.

În mod similar, dacă doriți să vă deplasați în jos din celula A1 2 rânduri și mergeți 2 coloane la dreapta și selectați acea celulă, adică celula C2.

În aceste cazuri, funcția OFFSET este foarte utilă. Mai ales în VBA OFFSET Funcția este doar fenomenală.

OFFSET este utilizat cu Range Object în Excel VBA

În VBA, nu putem introduce direct cuvântul OFFSET. Mai întâi trebuie să folosim obiectul VBA RANGE și, din acel obiect de gamă, putem folosi proprietatea OFFSET.

În Excel, intervalul nu este altceva decât o celulă sau un interval al celulei. Deoarece OFFSET se referă la celule, trebuie să folosim mai întâi obiectul RANGE și apoi putem folosi metoda OFFSET.

Sintaxa OFFSET în VBA Excel

  • Decalare rând: câte rânduri doriți să compensați de la celula selectată. Aici, celula selectată este A1, adică Range („A1”).
  • Offset coloană: câte coloane doriți să compensați din celula selectată. Aici celula selectată este A, 1, adică Range („A1”).

Exemple

Exemplul nr. 1

Luați în considerare datele de mai jos, de exemplu, demonstrația.

Acum vreau să selectez celula A6 din celula A1. Porniți macroul și celula de referință folosind obiectul Range.

Cod:

Sub Offset_Example1 () Range ("A1"). Offset (End Sub

Acum vreau să selectez celula A6, adică vreau să descărc 5 celule. Deci, introduceți 5 ca parametru pentru Offset rând.

Cod:

Sub Offset_Example1 () Range ("A1"). Offset (5 End Sub

Deoarece selectez în aceeași coloană, las partea de coloană. Închideți paranteză și puneți un punct (.) Și tastați metoda „Selectați”.

Cod:

Sub Offset_Example1 () Range ("A1"). Offset (5). Selectați End Sub

Acum rulați acest cod folosind tasta F5 sau puteți rula manual pentru a selecta celula A6 așa cum se arată mai jos.

Ieșire:

Exemplul nr. 2

Acum luați aceleași date, dar aici veți vedea cum să utilizați și argumentul de compensare a coloanei. Acum vreau să selectez celula C5.

Din moment ce vreau să selectez celula C5 în primul rând, vreau să mă deplasez în jos 4 celule și să iau 2 coloane din dreapta pentru a ajunge la celula C5. Codul de mai jos ar face treaba pentru mine.

Cod:

Sub Offset_Example2 () Range ("A1"). Offset (4, 2). Selectați End Sub

Execut acest cod manual sau folosind tasta F5. Apoi, va selecta celula C5, așa cum se arată în captura de ecran de mai jos.

Ieșire:

Exemplul nr. 3

Am văzut cum să compensăm rândurile și coloanele. De asemenea, putem selecta celulele de mai sus din celulele specificate. De exemplu, dacă vă aflați în celula A10 și doriți să selectați celula A1, cum selectați?

În cazul deplasării în jos a celulei, putem introduce un număr pozitiv, deci aici, în cazul deplasării în sus, trebuie să introducem numere negative.

Din celula A9, trebuie să ne deplasăm cu 8 rânduri, adică -8.

Cod:

Sub Offset_Example1 () Range ("A9"). Offset (-8). Selectați End Sub

Dacă rulați acest cod folosind tasta F5 sau puteți rula manual acest cod, acesta va selecta celula A1 din celula A9.

Ieșire:

Exemplul # 4

Să presupunem că sunteți în celula C8. Din această celulă, doriți să selectați celula A10.

Din celula activă, l, adică celula C8, trebuie mai întâi să ne deplasăm în jos cu 2 rânduri și trebuie să ne deplasăm la stânga cu 2 coloane pentru a selecta celula A10.

În cazul deplasării la stânga pentru a selecta coloana, trebuie să specificăm numărul este negativ. Deci, aici trebuie să revenim cu -2 coloane.

Cod:

Sub Offset_Example2 () Range ("C8"). Offset (2, -2). Selectați End Sub

Acum rulați acest cod folosind tasta F5 sau rulați manual, va selecta celula A10 așa cum se arată mai jos:

Ieșire:

Lucruri de amintit

  • În cazul deplasării în sus a rândurilor, trebuie să specificăm numărul în negative.
  • În cazul deplasării la stânga pentru a selecta coloana, numărul ar trebui să fie negativ.
  • Celula A1 este primul rând și prima coloană.
  • Celula activă înseamnă celulele selectate în prezent.
  • Dacă doriți să selectați celula folosind OFFSET, trebuie să menționați „.Select”.
  • Dacă doriți să copiați celula folosind OFFSET, trebuie să menționați „.Copy”.

Articole interesante...