Cuprins
Astăzi aș vrea să vă prezint pe Funcția OFFSET din Excel cu 3 exemple din viața reală.
La început, voi descrie sintaxa formulei și apoi voi vorbi despre modul în care funcția OFFSET poate fi utilizată pentru a rezolva probleme din viața reală.
Introducere
Funcția OFFSET poate returna o referință la o celulă (să o numim celulă țintă) sau interval (interval țintă) care se află la un număr specificat de rânduri și coloane distanță de o altă celulă (celulă de referință) sau interval (interval de referință).
Figura de mai jos ilustrează modul de utilizare a funcției OFFSET pentru a returna referința la o celulă (partea stângă) sau la un interval (partea dreaptă).
Aceasta vă va da o impresie intuitivă despre ce este o celulă țintă și ce este o celulă de referință.
Celula evidențiată în verde este o celulă țintă, în timp ce celulele evidențiate în galben sunt formate dintr-un interval țintă.
Celulele evidențiate în albastru sunt celule de referință.
Figura 1
Ce înseamnă OFFSET în Excel (sintaxă)?
Iată sintaxa funcției Offset: OFFSET (referință, rânduri, coloane, [înălțime], [lățime])
Referință | Este necesar. Referința este o celulă sau un interval de celule de la care începe decalajul. Rețineți că celulele trebuie să fie adiacente una față de cealaltă dacă specificați un interval de celule. |
Rânduri | Necesar Numărul de rânduri, în sus sau în jos, al celulei de referință sau al celulei din stânga-sus a intervalului de referință. Rânduri poate fi fie pozitivă, fie negativă. Uitați-vă la partea stângă a figurii 1, celula țintă va fi B2 dacă schimb funcția ca OFFSET (C3, -1, -1, -1). B2 este un rând mai sus decât C3. |
Cols | Este necesar. Numărul de coloane, la stânga sau la dreapta celulei de referință sau a celulei din stânga-sus a intervalului de referință. Ca și în cazul lui Rânduri valorile din Cols poate fi, de asemenea, atât pozitivă, cât și negativă. Cum putem scrie funcția OFFSET dacă stabilim B4 ca celulă de referință și C3 ca celulă țintă? Răspunsul este OFFSET (B4, -1, 1). Aici puteți vedea că Cols este pozitivă, iar C3 este o coloană la dreapta lui B4. |
Înălțime | Opțional. Utilizați argumentul Height (Înălțime) numai dacă ținta este un interval. Acesta spune câte rânduri include intervalul țintă. Height (Înălțimea) trebuie să fie un număr pozitiv. Puteți vedea în partea dreaptă a figurii 1 că există două rânduri în intervalul țintă. Prin urmare, setați Height (Înălțimea) la 2 în acest caz. |
Lățime | Opțional. Utilizați argumentul Width numai dacă obiectivul este un interval (a se vedea partea dreaptă a figurii 1). Acesta indică numărul de coloane pe care le conține intervalul țintă. Width trebuie să fie un număr pozitiv. |
Ei bine, permiteți-mi să vă arăt acum cum să utilizați funcția OFFSET pentru a rezolva probleme din viața reală.
Cazul 1: Căutarea de la dreapta la stânga prin combinarea funcțiilor OFFSET și MATCH
Este bine cunoscut faptul că puteți efectua o căutare de la stânga la dreapta numai cu funcția VLOOKUP.
Valoarea care trebuie căutată trebuie să fie plasată în prima coloană a tabloului dumneavoastră.
Trebuie să deplasați întreaga gamă de tabele spre dreapta cu o coloană dacă doriți să adăugați o nouă valoare de căutare sau trebuie să modificați structura de date dacă doriți să utilizați o altă coloană ca valoare de căutare.
Dar prin combinarea OFFSET cu funcția Match, limitarea funcției VLOOKUP poate fi eliminată.
Ce este funcția MATCH și cum putem combina funcția OFFSET cu funcția Match pentru a face căutarea?
Ei bine, funcția Match caută un element specificat într-un interval de celule și apoi returnează poziția relativă a acelui element în interval.
Să luăm ca exemplu intervalul B3:B8 din figura 2.1 (care prezintă veniturile diferitelor țări în ani diferiți).
Formula "=MATCH ("USA", B3:B8, 0)" va returna 1 deoarece USA este primul element din interval (a se vedea celulele B10 și C10).
Pentru un alt interval C2:F2, formula "=MATCH (2015, C2:F2, 0)" produce următoarele rezultate 3 deoarece 2015 este al treilea element din interval (a se vedea celulele B11 și C11).
Revenind la funcția OFFSET.
Dacă stabilim celula B2 ca celulă de referință și luăm celula E3 ca celulă țintă, cum putem scrie formula OFFSET?
E3 este 1 rândul de sub B2 și 3 coloane de la dreapta la B2.
Prin urmare, formula poate fi scrisă ca "=OFFSET(B2, 1 , 3 )"." Privește cu atenție numerele de culoare roșie, poți să constați că se potrivesc?
Acesta este răspunsul la întrebarea - Cum se combină funcția OFFSET cu funcția Match - Funcția Match poate fi aplicată pentru a servi ca al doilea sau al treilea argument al funcției OFFSET (a se vedea celula C13).
Celula C14 demonstrează cum se utilizează funcția VLOOKUP pentru a prelua aceleași date.
Înainte de a scrie funcția VLOOKUP, trebuie să știm că veniturile din 2015 sunt înregistrate în a patra coloană a tabelului B2:F8.
Aceasta înseamnă că trebuie să cunoaștem foarte bine structura de date atunci când folosim funcția VLOOKUP.
Aceasta este o altă limitare pentru VLOOKUP. Cu toate acestea, prin utilizarea funcției MATCH ca argument al funcției OFFSET, nu trebuie să cunoaștem indicele coloanei.
Acest lucru este foarte util în cazul în care există multe coloane.
Figura 2.1
Acum să trecem mai departe și să vedem un exemplu mai complex.
Să presupunem că avem un tabel care conține numele companiei, numele persoanei de contact și adresa de e-mail pentru diferite companii.
Și dorim să recuperăm numele companiei de la un nume de contact cunoscut sau să obținem un nume de contact de la o adresă de e-mail cunoscută. Ce putem face?
A se vedea figura 2.2, intervalul B5:E8 include informații despre companie. Punând intrările în celula C2 și în celula B3, cu ajutorul formulei din pătratul roșu, pot prelua numele companiei dacă știu numele persoanei de contact.
Intervalul D2:E4 arată cum se obține un nume de contact cu o adresă de e-mail cunoscută.
Pe scurt, aceste două exemple ilustrează faptul că putem efectua o căutare de la dreapta la stânga, iar valoarea de căutare nu trebuie neapărat să fie plasată în cea mai din dreapta coloană. Orice coloană din matricea tabelului poate conține valoarea de căutare.
Figura 2.2
Cazul 2: Automatizarea calculului prin combinarea funcțiilor OFFSET și COUNT
Înainte de a prezenta modul de automatizare a calculelor ori de câte ori adăugăm un număr nou într-o coloană, să începem cu modul de returnare automată a ultimului număr dintr-o coloană.
Priviți figura de mai jos, care prezintă intrările din Resurse umane. Să presupunem că dorim să obținem ultimul număr din coloana B, formula ar fi "=OFFSET (C2, 9 , 0)" dacă aplicăm funcția OFFSET.
Din formulă, putem ști că 9 este numărul cheii.
Atâta timp cât putem returna acest număr în mod automat, putem localiza automat ultimul număr dintr-o coloană.
9 este doar numărul de celule care conțin numere din coloana C.
Dacă sunteți familiarizat cu funcția COUNT, știți că aceasta poate număra numărul de celule care conțin numere într-un interval.
De exemplu, formula "=COUNT (C3:C11)" va număra numărul de celule care conțin numere în celulele C3 până la C11.
În cazul nostru, am dori să știm câte numere sunt într-o coloană întreagă, prin urmare, ar trebui utilizată o referință de tipul C:C, care include toate rândurile din coloana C.
Vă rugăm să vă uitați la celulele G4 și H4, numărul returnat de "=COUNT(C:C)" este exact egal cu 9 .
Astfel, prin înlocuirea lui 9 cu COUNT(C:C) în funcția OFFSET de mai sus, putem obține o nouă formulă "=OFFSET (C2, COUNT(C:C) , 0)" (în celula H5).
Numărul pe care îl returnează este 87000, care este exact ultimul număr din coloana C.
Să trecem acum la calculul automat. Să presupunem că dorim să obținem totalul tuturor numerelor din coloana C.
Formula ar fi "=SUMĂ (OFFSET (C2, 1, 0, 9 , 1)))" dacă folosim SUM împreună cu OFFSET.
9 este numărul total de rânduri din intervalul C3:C11 și, de asemenea, numărul total de celule care conțin numere în coloana C.
Prin urmare, putem scrie formula într-un mod nou, cum ar fi "=SUM (OFFSET (C2,1, 0, COUNT (C:C), 1))".
Uitați-vă la celulele G10 și H10, numărul total de salarii pentru acești 9 angajați este de 521.700 $.
Acum, dacă introduceți un număr precum 34.000 de dolari în celula C12, atât numărul din celula G5, cât și cel din G10 vor fi modificate la 34.000 de dolari și, respectiv, 555.700 de dolari.
Aceasta este ceea ce eu numesc automatizare, deoarece nu trebuie să actualizați formulele din celula G5 sau G10.
Trebuie să aveți grijă când utilizați funcția COUNT, deoarece funcția COUNT returnează doar numărul de celule care conțin numere.
De exemplu, "=COUNT (B: B)" returnează 0 în loc de 9, deoarece nu există nicio celulă în coloana B care să conțină numere (a se vedea celulele G3 și H3).
Coloana D include 10 celule care conțin numere, iar numărul returnat de "COUNT (D: D)" este, de asemenea, 10.
Dar dacă dorim să recuperăm ultimul număr din coloana D, așa cum am făcut pentru coloana C, vom obține numărul 0 (a se vedea celulele G8 și H8).
Evident, 0 nu este ceea ce ne dorim. Ce este în neregulă? Celula D13 este la 11 rânduri distanță de celula D2 în loc de 10 rânduri.
Acest lucru poate fi demonstrat și prin formula "=OFFSET (D2, COUNT (D: D) + 1 , 0)" în celula G7.
Pe scurt, numerele trebuie să fie adiacente dacă dorim să folosim funcția COUNT împreună cu funcția OFFSET pentru a permite automatizarea calculelor.
Figura 3
Cazul 3: Utilizați funcția OFFSET pentru a realiza o gamă dinamică
Să presupunem că dorim să reprezentăm grafic vânzările unitare lunare ale unei companii, iar în figura 4.1 sunt prezentate date actuale și un grafic creat pe baza datelor actuale.
În fiecare lună, vânzările de unități din ultima lună se adaugă sub ultimul număr din coloana C.
Există o modalitate ușoară de a actualiza automat graficul?
Cheia pentru actualizarea graficului este utilizarea funcției OFFSET pentru a crea nume de intervale dinamice pentru coloana Unități vândute.
Intervalul dinamic pentru vânzările unităților va include automat toate datele privind vânzările pe măsură ce se introduc date noi.
Figura 4.1
Pentru a crea o gamă dinamică, faceți clic pe butonul Formule și, apoi alegeți Nume Manager sau Definiți numele .
Sub Nume nou caseta de dialog vă va solicita dacă faceți clic pe Definiți numele .
Dacă alegeți Nume manager , de asemenea, trebuie să faceți clic pe Nou pentru a realiza următoarele Nume nou apare caseta de dialog.
Figura 4.2
În " Numele: ", trebuie completat numele intervalului dinamic. Și în caseta de intrare " Se referă la:" trebuie să introducem formula OFFSET "=OFFSET (Figure4!$C$2, 1, 0, COUNT (!$C: $C), 1)" care va genera un interval dinamic de valori bazat pe unitățile vândute introduse în coloana C.
În mod implicit, un nume se va aplica întregului registru de lucru și trebuie să fie unic în cadrul acestuia.
Cu toate acestea, dorim să restricționăm domeniul de aplicare la o anumită foaie.
Prin urmare, am ales aici figura4 în " Domeniul de aplicare: "După ce faceți clic pe OK , se creează gama dinamică.
Acesta va include automat toate datele privind vânzările pe măsură ce se introduc date noi.
Acum faceți clic dreapta pe orice punct din grafic și selectați "Select Data".
Figura 4.3
În cadrul prompted Selectați datele Sursa, alegeți Seria1 și apoi Editați.
Figura 4.4
Apoi tastați "=Figure4!Units", așa cum arată figura 4.5.
Figura 4.5
În cele din urmă, să încercăm și să scriem 11 în celula C13. Puteți vedea că graficul s-a schimbat și că valoarea 11 a fost inclusă.
Graficul se va modifica automat atunci când se adaugă date noi.
Figura 4.6
Citește mai mult...
- Funcția Offset(...) în Excel cu exemple
Descărcați fișierele de lucru
Descărcați fișierele de lucru de la link-ul de mai jos.
Excel-Offset-Funcție.rar