Tabl cynnwys
Yn y tiwtorial hwn, byddwch yn dysgu sut i greu ystod a enwir deinamig yn Excel a sut i'w ddefnyddio mewn fformiwlâu i gynnwys data newydd yn awtomatig mewn cyfrifiadau.
Yn ystod yr wythnos ddiwethaf tiwtorial, buom yn edrych ar wahanol ffyrdd o ddiffinio ystod statig a enwir yn Excel. Mae enw statig bob amser yn cyfeirio at yr un celloedd, sy'n golygu y byddai'n rhaid i chi ddiweddaru'r cyfeirnod amrediad â llaw pryd bynnag y byddwch yn ychwanegu data newydd neu'n dileu data sy'n bodoli eisoes.
Os ydych yn gweithio gyda set ddata sy'n newid yn barhaus, efallai y byddwch am wneud hynny gwnewch eich amrediad a enwir yn ddeinamig fel ei fod yn ehangu'n awtomatig i gynnwys cofnodion neu gontractau sydd newydd eu hychwanegu i eithrio data sydd wedi'i ddileu. Ymhellach ymlaen yn y tiwtorial hwn, fe welwch ganllawiau cam-wrth-gam manwl ar sut i wneud hyn.
Ar gyfer dechreuwyr, gadewch i ni adeiladu ystod a enwir deinamig sy'n cynnwys un golofn a nifer amrywiol o resi. I'w wneud, dilynwch y camau hyn:
- Ar y tab Fformiwla , yn y grŵp Enwau Diffiniedig , cliciwch Diffiniwch Enw . Neu, gwasgwch Ctrl + F3 i agor y Rheolwr Enw Excel, a chliciwch ar y botwm Newydd… .
- Y naill ffordd neu'r llall, bydd y blwch deialog Enw Newydd yn agor, ble rydych yn nodi'r manylion canlynol:
- Yn y blwch Enw , teipiwch yr enw ar gyfer eich amrediad deinamig.
- Yn y gwymplen Scope , gosodwch y cwmpas yr enw. Argymhellir Gweithlyfr (diofyn) yn y rhan fwyafachosion.
- Yn y blwch Yn cyfeirio at , rhowch naill ai fformiwla OFFSET COUNTA neu INDEX COUNTA.
> - Cliciwch Iawn. Wedi'i Wneud!
Yn y ciplun canlynol, rydym yn diffinio ystod ddeinamig a enwir eitemau sy'n cynnwys pob gell gyda data yng ngholofn A, heblaw am y rhes pennyn :
15>Fformiwla OFFSET i ddiffinio amrediad deinamig Excel a enwir
Mae'r fformiwla generig i wneud amrediad deinamig a enwir yn Excel fel a ganlyn:
OFFSET ( cell_cyntaf, 0, 0, COUNTA( colofn), 1)Lle:
- cell_gyntaf - y gyntaf eitem i'w chynnwys yn yr ystod a enwir, er enghraifft $A$2.
- colofn - cyfeiriad absoliwt at y golofn fel $A:$A.
Wrth wraidd y fformiwla hon, rydych yn defnyddio'r ffwythiant COUNTA i gael nifer y celloedd nad ydynt yn wag yn y golofn o ddiddordeb. Mae'r rhif hwnnw'n mynd yn syth i ddadl uchder y ffwythiant OFFSET (cyfeirnod, rhesi, cols, [uchder], [lled]) gan ddweud faint o resi i'w dychwelyd.
Y tu hwnt i hynny, mae'n fformiwla Offset arferol, lle:
- cyfeirnod yw'r man cychwyn ar gyfer seilio'r gwrthbwyso (cell_cyntaf).
- rhesi a cols yn 0, gan nad oes colofnau na rhesi i'w gwrthbwyso.
- mae lled yn hafal i 1 golofn.
Er enghraifft, i adeiladu ystod a enwir deinamig ar gyfer colofn A yn Nhaflen 3, gan ddechrau yng nghell A2, rydym yn defnyddio'r fformiwla hon:
=OFFSET(Sheet3!$A$2, 0, 0, COUNTA(Sheet3!$A:$A), 1)
Nodyn. Os ydych chi'n diffinioystod ddeinamig yn y daflen waith gyfredol, nid oes angen i chi gynnwys enw'r daflen yn y cyfeiriadau, bydd Excel yn ei wneud i chi yn awtomatig. Os ydych yn adeiladu amrediad ar gyfer rhyw ddalen arall, rhowch enw'r ddalen a'r pwynt ebychnod i ddilyn y cyfeirnod cell neu ystod (fel yn yr enghraifft fformiwla uchod).
Fformiwla MYNEGAI i wneud amrediad deinamig a enwir yn Excel
Ffordd arall o greu ystod ddeinamig Excel yw defnyddio COUNTA ar y cyd â'r ffwythiant INDEX.
cell_cyntaf:INDEX( colofn,COUNTA(<1)>colofn))Mae'r fformiwla hon yn cynnwys dwy ran:
- Ar ochr chwith gweithredwr yr ystod (:), rydych chi'n rhoi'r cyfeirnod cychwyn â chod caled fel $A$2 .
- Ar yr ochr dde, rydych chi'n defnyddio'r ffwythiant INDEX(arae, row_num, [column_num]) i gyfrifo'r cyfeirnod terfynu. Yma, rydych chi'n cyflenwi'r golofn A gyfan ar gyfer yr arae ac yn defnyddio COUNTA i gael rhif y rhes (h.y. nifer y celloedd nad ydynt yn fynediad yng ngholofn A).
Ar gyfer ein set ddata sampl (gweler y sgrin uchod), mae'r fformiwla'n mynd fel a ganlyn:
=$A$2:INDEX($A:$A, COUNTA($A:$A))
Gan fod 5 cell nad ydynt yn wag yng ngholofn A, gan gynnwys pennyn colofn, mae COUNTA yn dychwelyd 5. O ganlyniad, mae INDEX yn dychwelyd $A $5, sef y gell olaf a ddefnyddiwyd yng ngholofn A (fel arfer mae fformiwla Mynegai yn dychwelyd gwerth, ond mae'r gweithredwr cyfeirio yn ei orfodi i ddychwelyd cyfeirnod). Ac oherwydd ein bod wedi gosod $A$2 fel y man cychwyn, canlyniad terfynoly fformiwla yw'r ystod $A$2:$A$5.
I brofi'r ystod ddeinamig sydd newydd ei chreu, gallwch gael COUNTA i nôl y cyfrif eitemau:
=COUNTA(Items)
17>
Os gwneir popeth yn iawn, bydd canlyniad y fformiwla yn newid unwaith y byddwch yn ychwanegu neu dynnu eitemau i/o'r rhestr:
Nodyn. Mae'r ddwy fformiwla a drafodwyd uchod yn cynhyrchu'r un canlyniad, ond mae gwahaniaeth mewn perfformiad y dylech fod yn ymwybodol ohono. Mae OFFSET yn swyddogaeth gyfnewidiol sy'n ailgyfrifo gyda phob newid i ddalen. Ar beiriannau modern pwerus a setiau data o faint rhesymol, ni ddylai hyn fod yn broblem. Ar beiriannau gallu isel a setiau data mawr, gall hyn arafu eich Excel. Yn yr achos hwnnw, byddai'n well ichi ddefnyddio'r fformiwla MYNEGAI i greu amrediad deinamig a enwir.
Sut i wneud amrediad deinamig dau-ddimensiwn yn Excel
I adeiladu ystod dau-ddimensiwn a enwir, lle mae nid yn unig nifer y rhesi ond hefyd nifer y colofnau yn ddeinamig, defnyddiwch yr addasiad canlynol o fformiwla INDEX COUNTA:
first_cell:INDEX($1:$1048576, COUNTA( first_column), COUNTA( first_row)))Yn y fformiwla hon, mae gennych ddwy swyddogaeth COUNTA i gael y rhes olaf nad yw'n wag a'r golofn olaf nad yw'n wag ( row_num a colofn_num dadleuon y ffwythiant MYNEGAI, yn y drefn honno). Yn y ddadl array , rydych chi'n bwydo'r daflen waith gyfan (1048576 o resi yn Excel 2016 - 2007; 65535 o resi yn Excel 2003 ac yn is).
A nawr,gadewch i ni ddiffinio un ystod ddeinamig arall ar gyfer ein set ddata: yr ystod a enwir gwerthiannau sy'n cynnwys ffigurau gwerthiant am 3 mis (Ionawr i Fawrth) ac yn addasu'n awtomatig wrth i chi ychwanegu eitemau newydd (rhesi) neu fisoedd (colofnau) i y tabl.
Gyda'r data gwerthiant yn dechrau yng ngholofn B, rhes 2, mae'r fformiwla yn cymryd y siâp a ganlyn:
=$B$2:INDEX($1:$1048576,COUNTA($B:$B),COUNTA($2:$2))
I wneud yn siŵr bod eich amrediad deinamig yn gweithio fel y dylai, rhowch y fformiwlâu canlynol rhywle ar y ddalen:
=SUM(sales)
=SUM(B2:D5)
Fel y gwelwch yn y sgrinlun isod , mae'r ddwy fformiwla yn dychwelyd yr un cyfanswm. Mae'r gwahaniaeth yn amlygu ei hun ar yr eiliad y byddwch chi'n ychwanegu cofnodion newydd at y tabl: bydd y fformiwla gyntaf (gyda'r amrediad deinamig a enwir) yn diweddaru'n awtomatig, tra bydd yn rhaid diweddaru'r ail â llaw gyda phob newid. Mae hynny'n gwneud gwahaniaeth enfawr, uh?
Sut i ddefnyddio ystodau deinamig a enwir yn fformiwlâu Excel
Yn adrannau blaenorol y tiwtorial hwn, rydych chi eisoes wedi gweld cwpl o fformiwlâu syml sy'n defnyddio ystodau deinamig. Nawr, gadewch i ni geisio meddwl am rywbeth mwy ystyrlon sy'n dangos gwir werth amrediad deinamig Excel a enwir.
Ar gyfer yr enghraifft hon, rydyn ni'n mynd i gymryd y fformiwla INDEX MATCH clasurol sy'n perfformio Vlookup yn Excel:
MYNEGAI ( ystod_dychwelyd, MATCH ( lookup_value, lookup_range, 0))
…a gweld sut yr ydym yn gallu gwneud y fformiwla hyd yn oed yn fwy pwerus gyda'r defnydd oystodau deinamig a enwir.
Fel y dangosir yn y ciplun uchod, rydym yn ceisio adeiladu dangosfwrdd, lle mae'r defnyddiwr yn mewnbynnu enw eitem yn H1 ac yn cael cyfanswm gwerthiant yr eitem honno yn H2. Mae ein tabl sampl a grëwyd at ddibenion arddangos yn cynnwys dim ond 4 eitem, ond yn eich taflenni bywyd go iawn gall fod cannoedd a hyd yn oed filoedd o resi. Ar ben hynny, gellir ychwanegu eitemau newydd yn ddyddiol, felly nid yw defnyddio cyfeiriadau yn opsiwn, oherwydd byddai'n rhaid i chi ddiweddaru'r fformiwla dro ar ôl tro. Rwy'n rhy ddiog am hynny! :)
Er mwyn gorfodi'r fformiwla i ehangu'n awtomatig, rydyn ni'n mynd i ddiffinio 3 enw: 2 ystod ddeinamig, ac 1 gell statig a enwir:
Lookup_range: =$A$2:INDEX($ A:$A, COUNTA($A:$A))
Return_range: =$E$2:INDEX($E:$E, COUNTA($E:$E))
Lookup_value: =$H$1
Nodyn. Bydd Excel yn ychwanegu enw'r ddalen gyfredol at bob cyfeiriad, felly cyn creu'r enwau gwnewch yn siŵr eich bod yn agor y ddalen gyda'ch data ffynhonnell.
Nawr, dechreuwch deipio'r fformiwla yn H1. O ran y ddadl gyntaf, teipiwch ychydig o nodau o'r enw rydych chi am ei ddefnyddio, a bydd Excel yn dangos yr holl enwau cyfatebol sydd ar gael. Cliciwch ddwywaith ar yr enw priodol, a bydd Excel yn ei fewnosod yn y fformiwla ar unwaith:
>Mae'r fformiwla wedi'i chwblhau yn edrych fel a ganlyn:
=INDEX(Return_range, MATCH(Lookup_value, Lookup_range, 0))
Ac yn gweithio'n berffaith!
Cyn gynted ag y byddwch yn ychwanegu cofnodion newydd at y tabl, byddant yn cael eu cynnwys yn eich cyfrifiadau ynunwaith, heb i chi orfod gwneud un newid i'r fformiwla! Ac os oes angen i chi borthi'r fformiwla i ffeil Excel arall, crëwch yr un enwau yn y llyfr gwaith cyrchfan, copïwch / gludwch y fformiwla, a gwnewch iddo weithio ar unwaith.
Awgrym. Ar wahân i wneud fformiwlâu yn fwy gwydn, mae ystodau deinamig yn ddefnyddiol ar gyfer creu cwymplenni deinamig.
Dyma sut rydych chi'n creu ac yn defnyddio ystodau deinamig a enwir yn Excel. I gael golwg agosach ar y fformiwlâu a drafodir yn y tiwtorial hwn, mae croeso i chi lawrlwytho ein sampl Excel Dynamic Named Work Range Workbook. Diolch i chi am ddarllen a gobeithio gweld chi ar ein blog wythnos nesaf!