Ynhâldsopjefte
Hjoed wol ik jo graach foarstelle oan Excel's OFFSET-funksje mei 3 echte foarbylden.
Earst sil ik de formulesyntaksis beskriuwe en dan gean ik nei prate oer hoe't de OFFSET-funksje brûkt wurde kin om problemen yn it echte libben op te lossen.
Ynlieding
De OFFSET-funksje kin in ferwizing werombringe nei in sel (litte wy it doelsel neame) of berik (doel berik) dat in spesifisearre oantal rigen en kolommen fuort is fan in oare sel (referinsjesel) of berik (referinsjeberik).
De figuer hjirûnder yllustrearret hoe't jo de OFFSET-funksje brûke om de referinsje werom te jaan nei in sel ( linker diel) of in berik (rjochter diel).
It sil jo in yntuïtive yndruk jaan fan wat in doelsel is en wat in referinsjesel is.
De sel markearre yn grien is in doelsel wylst sellen markearre yn giel bestean út in doel berik.
Sellen markearre yn blau binne referinsje sellen.
Figure 1
Wat betsjut OFFSET yn Excel (syntaksis)?
Hjir is de syntaksis fan Offset-funksje: OFFSET (referinsje, rigen, kolommen, [hichte], [breedte])
Referinsje | Eask. De referinsje is in sel of berik fan sellen wêrfan de offset begjint. Tink derom dat de sellen neist inoar lizze moatte as jo in berik fan sellen oantsjutte. |
Rijen | Required . It oantal rigen, omheech of omleech, de referinsje sel of de boppeste lofts sel fanit referinsjeberik. Rige kin posityf of negatyf wêze. Sjoch nei it linker diel fan figuer 1, de doelsel sil B2 wêze as ik de funksje feroarje as OFFSET (C3, -1, -1). B2 is ien rige omheech C3. |
Kols | Eask. It oantal kolommen, nei lofts of rjochts , fan de referinsjesel of de sel linksboppe fan it referinsjeberik. Lykas by it argumint Rijen kinne de wearden fan Kols ek sawol posityf as negatyf wêze. Hoe kinne wy de OFFSET-funksje skriuwe as wy B4 as referinsjesel en C3 as doelsel ynstelle? It antwurd is OFFSET (B4, -1, 1). Hjir kinne jo sjen dat Cols posityf is en C3 is ien kolom rjochts fan B4. |
Hichte | Opsjoneel. Brûk allinich it Height Argument As it doel in berik is. It fertelt hoefolle rigen dat it doel berik omfiemet. Hichte moat in posityf getal wêze. Jo kinne sjen út it rjochter diel fan figuer 1 dat der twa rigen yn it doel berik. Dêrom sette wy yn dat gefal Hichte as 2. |
Breedte | Opsjoneel. Brûk allinnich it Breedte-argumint as it doel is in berik (sjoch rjochter diel fan figuer 1). It jout oan hoefolle kolommen it doelberik befettet. De breedte moat in posityf getal wêze. |
No, lit my jo no sjen litte hoe't jo de OFFSET-funksje brûke kinne om problemen yn it echte libben op te lossen.
Case 1: Rjochts-nei-lofts Lookup troch kombinearjen OFFSET en MATCHFunksjes
It is bekend dat jo allinich in opsykje fan links nei rjochts útfiere kinne mei de funksje VLOOKUP.
De wearde om nei te sykjen moat pleatst wurde yn de earste kolom fan jo tabelarray.
Jo moatte jo hiele tabelberik nei rjochts ferpleatse troch ien kolom as jo in nije opsykwearde taheakje wolle of jo moatte jo gegevensstruktuer feroarje as jo in oare kolom brûke wolle as de opsykwearde .
Mar troch OFFSET te kombinearjen mei de Match-funksje kin de beheining fan de VLOOKUP-funksje fuortsmiten wurde.
Wat is de MATCH-funksje en hoe kinne wy de OFFSET-funksje kombinearje mei de Match-funksje om it sykjen dwaan?
No, de Match-funksje siket nei in spesifisearre item yn in berik fan sellen en jout dan de relative posysje fan dat item yn it berik werom.
Litte wy berik B3:B8 nimme fan figuer 2.1 (dy't de ynkomsten fan ferskate lannen yn ferskate jierren sjen lit) as foarbyld.
Formule "=MATCH ("Feriene Steaten", B3:B8, 0)" sil weromkomme 1 sûnt USA is it earste item yn th e berik (sjoch sellen B10 en C10).
Foar in oar berik C2:F2 jout de formule "=MATCH (2015, C2:F2, 0)" 3 werom as 2015 de tredde item yn it berik (sjoch sel B11 en C11).
Gean werom nei de OFFSET-funksje.
As wy sel B2 ynstelle as de referinsjesel en sel E3 nimme as de doelsel, hoe kinne wy de OFFSET-formule skriuwe?
E3 is 1 rige ûnder B2 en 3 kolommen rjocht neiB2.
Dêrom kin de formule skreaun wurde as “=OFFSET(B2, 1 , 3 )”. Besjoch de nûmers yn reade kleur goed, kinne jo fine dat se oerienkomme?
Dat is it antwurd op 'e fraach - Hoe kinne jo OFFSET-funksje kombinearje mei Match-funksje - Match-funksje kin tapast wurde om te tsjinjen as it twadde of it tredde argumint fan OFFSET-funksje (sjoch sel C13).
Sel C14 lit sjen hoe't jo de VLOOKUP-funksje brûke om deselde gegevens op te heljen.
Wy moatte ynkomsten witte. yn 2015 wurdt opnaam yn de 4e kolom fan de tabel array B2:F8 foardat it skriuwen fan de VLOOKUP funksje.
It betsjut dat wy moatte witte hiel goed oer de gegevens struktuer by it brûken fan de VLOOKUP funksje.
Dit is in oare beheining foar VLOOKUP. Troch de MATCH-funksje as argumint fan de OFFSET-funksje te brûken, hoege wy lykwols de kolomyndeks net te witten.
Dit is tige handich as der in protte kolommen binne.
Figure 2.1
No litte wy fierder gean en in komplekser foarbyld sjen.
Stel dat wy in tabel hawwe mei Company Name, Contact Name en Email Address foar ferskate bedriuwen.
En wy wolle de bedriuwsnamme ophelje fan in bekende kontaktnamme of in kontaktnamme krije fan in bekend e-mailadres. Wat kinne wy dwaan?
Sjoch figuer 2.2, berik B5:E8 befettet bedriuwynformaasje. Troch ynputen yn sel C2 en sel B3 te setten, mei help fan de formule yn read fjouwerkant, kin ik debedriuwsnamme as ik de kontaktnamme ken.
Rang D2:E4 lit sjen hoe't jo in kontaktnamme krije mei in bekend e-mailadres.
Gearfetsjend yllustrearje dizze twa foarbylden dat wy kin in opsykje fan rjochts nei lofts útfiere en de sykwearde hoecht net yn 'e rjochterste kolom te pleatsen. Elke kolom yn 'e tabelarray kin de sykwearde befetsje.
Figure 2.2
Gefal 2: Automatisearje berekkening mei kombinearjen fan OFFSET- en COUNT-funksjes
Foar yntroduksje oer hoe't jo berekkening automatisearje kinne as wy in nij nûmer tafoegje yn in kolom, litte wy begjinne mei hoe't jo it lêste nûmer yn in kolom earst automatysk weromjaan kinne.
Sjoch nei de ûndersteande figuer dy't ynstjoerings fan Human Resources sjen lit. Stel dat wy it lêste nûmer yn Kolom B krije wolle, dan soe de formule "=OFFSET (C2, 9 , 0)" wêze as wy de OFFSET-funksje tapasse.
Ut de formule , wy kinne witte dat 9 it kaainûmer is.
Salang't wy dit nûmer automatysk werombringe kinne, kinne wy it lêste nûmer yn in kolom automatysk fine.
9 is gewoan it oantal sellen dat nûmers befettet yn kolom C.
As jo bekend binne mei de COUNT-funksje, sille jo witte dat de COUNT-funksje it oantal telle kin fan sellen dy't nûmers befetsje yn in berik.
Bygelyks sil de formule "=COUNT (C3:C11)" it oantal sellen telle dy't nûmers befetsje yn sellen C3 oant C11.
Yn ús gefal,wy wolle graach witte hoefolle nûmers yn in hiele kolom, dêrom moat ferwizing lykas C:C, dy't alle rigen yn kolom C befettet, brûkt wurde.
Sjoch asjebleaft nei de sellen G4 en H4, it nûmer weromjûn troch "=COUNT(C:C)" is krekt gelyk oan 9 .
Sa kinne wy, troch 9 te ferfangen troch COUNT(C:C) yn 'e boppesteande OFFSET-funksje, in nij krije formule "=OFFSET (C2, COUNT(C:C) , 0)" (yn sel H5).
It nûmer dat it werombringt is 87000, dat is krekt it lêste nûmer yn kolom C .
Lit no gean nei de automatyske berekkening. Stel dat wy it totaal fan alle nûmers yn kolom C wolle.
De formule soe "=SUM (OFFSET (C2, 1, 0, 9 , 1))" wêze as wy brûk SUM tegearre mei OFFSET.
9 is it totale oantal rigen yn berik C3:C11 en ek it totale oantal sellen befettet nûmers yn kolom C.
Dêrom , kinne wy de formule op in nije manier skriuwe lykas "=SUM (OFFSET (C2,1, 0, COUNT (C:C), 1))".
Sjoch nei sellen G10 en H10, it totaal oantal salarissen foar dizze 9 meiwurkers is $521.700.
No as jo in nûmer lykas $34.000 yn sel C12 pleatse, sil sawol it nûmer yn sel G5 as G10 respektivelik feroare wurde nei $34.000 en $555.700.
Dit is wat ik automatisearring neam, om't jo gjin formules yn sel G5 of G10 bywurkje moatte.
Jo moatte foarsichtich wêze as jo de COUNT-funksje brûke, om't de COUNT-funksje allinich it oantal sellen weromjout dy't sifers befetsje.
Bygelyks,"=COUNT (B: B)" jout 0 yn plak fan 9, om't d'r gjin sel is yn kolom B dy't nûmers befettet (sjoch sellen G3 en H3).
Kolom D befettet 10 sellen dy't nûmers befetsje en it nûmer weromjûn troch "COUNT (D: D)" is ek 10.
Mar as wy it lêste nûmer yn kolom D weromhelje wolle lykas wy dien hawwe foar kolom C, krije wy nûmer 0 (sjoch sellen G8 en H8).
Fansels is 0 net wat wy wolle. Wat is der mis? Sel D13 is 11 rigen fuort fan sel D2 ynstee fan 10 rigen.
Dit kin ek oantoand wurde mei de formule "=OFFSET (D2, COUNT (D: D) + 1 , 0 )” yn sel G7.
Gearfetsjend moatte de nûmers neist elkoar stean as wy de COUNT-funksje tegearre mei de OFFSET-funksje brûke wolle om automatisearring fan berekkening mooglik te meitsjen.
Figure 3
Gefal 3: Brûk de OFFSET-funksje om in dynamysk berik te meitsjen
Stel dat wy de moanlikse ienheidferkeap fan in bedriuw yn kaart bringe wolle en figuer 4.1 aktuele gegevens toant en in diagram makke basearre op aktuele gegevens.
Elke moanne wurdt de ferkeap fan ienheden fan 'e lêste moanne tafoege ûnder it lêste nûmer yn kolom C.
Is d'r in maklike manier om it diagram automatysk te aktualisearjen?
De kaai foar it bywurkjen fan it diagram is it brûken fan OFFSET-funksje om dynamyske beriknammen te meitsjen foar de kolom ferkocht ienheden.
It dynamyske berik foar ferkeap fan ienheden sil automatysk alle ferkeapgegevens befetsje as nije gegevens ynfierd wurde.
Figuer 4.1
Om in dynamysk berik te meitsjen, klikje jo opde ljepper Formules en kies dan Nammebehearder of Namme definiearje .
Hjirûnder Nije namme sil it dialoochfinster freegje as jo op Define Name klikke.
As jo Name manager kieze, moatte jo ek op Nije klikke om de ûndersteande Nije Namme dialoochfinster ferskynt.
Figure 4.2
Yn it ynfierfak " Namme: " moat de namme fan it dynamysk berik ynfolle wurde En yn it ynfierfak " Refers to:" moatte wy de OFFSET-formule "=OFFSET (Figure4!$C$2, 1, 0, COUNT (!$C: $C), 1 ynfiere. )" dat soe generearje in dynamysk berik fan wearden basearre op ienheden ferkocht wearden typt yn kolom C.
Standert sil in namme jilde foar it hiele wurkboek en moat unyk wêze binnen it wurkboek.
Wy wolle de omfang lykwols beheine ta in bepaald blêd.
Dêrom kieze wy hjir figuer4 yn it ynfierfak " Scope: ". Nei it klikken op Okee wurdt it dynamyske berik oanmakke.
It sil automatysk alle ferkeapgegevens opnimme as nije gegevens ynfierd wurde.
No rjochtsklikke op elk punt yn de kaart en selektearje dan "Gegevens selektearje".
Figure 4.3
Yn de frege Selektearje Gegevens Boarne, kies Series1 en dan Bewurkje.
Figure 4.4
En typ dan "=Figure4!Units" lykas figuer 4.5 sjen lit.
Figure 4.5
As lêste, litte wy it besykje en typ 11 yn sel C13. Jo kinne sjen dat de kaart is feroare en wearde 11 is opnommen.
De kaartsil automatysk feroarje as nije gegevens tafoege wurde.
Figure 4.6
Lês mear...
- Offset(...) Funksje yn Excel mei foarbylden
Wurkbestannen downloade
Download de wurkbestannen fan de ûndersteande keppeling.
Excel-Offset-Function .rar