Tabl cynnwys
Onid ydych chi eisiau defnyddio Excel VBA ac eisiau gwneud FOR Loop yn Excel gan ddefnyddio Fformiwla? Yn yr erthygl hon, rydw i wedi dangos sut y gallwch chi wneud FOR Loop gan ddefnyddio fformiwlâu.
Os ydych chi'n gwybod sut i godio gydag Excel VBA , rydych chi wedi'ch bendithio 🙂 . Ond, os nad ydych erioed wedi ysgrifennu cod yn VBA neu eisiau cadw'ch llyfr gwaith Excel yn rhydd o god Excel VBA , yna y rhan fwyaf o'r amser mae'n rhaid i chi feddwl allan o'r blwch i greu a dolen syml .
Lawrlwythwch y Ffeil Gweithio
Lawrlwythwch y ffeil sy'n gweithio o'r ddolen isod:
Gwneud Dolen Gan Ddefnyddio Fformiwlâu. xlsx3 Enghreifftiau i'w Gwneud AR GYFER Dolen yn Excel Gan Ddefnyddio Fformiwla
Yma, byddaf yn dangos 3 enghreifftiau i wneud FOR Loop yn Excel gan ddefnyddio a fformiwla. Gawn ni weld yr enghreifftiau manwl.
1. Cymhwyso Swyddogaethau Cyfunol i Wneud AR GYFER Dolen yn Excel
Nawr, gadewch i mi wybod y cefndir sy'n fy annog i ysgrifennu'r enghraifft hon.
Rwy'n awdur rhai cyrsiau ar Udemy. Mae un o'r cyrsiau ar Fformatio Amodol Excel. Teitl y cwrs yw: Dysgu Fformatio Amodol Excel gyda 7 Problem Ymarferol. [ i gael mynediad am ddim i'r cwrs hwn, cliciwch yma ].
Yn y bwrdd trafod cwrs , gofynnodd myfyriwr gwestiwn i mi fel isod [delwedd sgrin].
Cwestiwn a ofynnwyd gan fyfyriwr yn Udemy.
Darllenwch y cwestiwn uchod yn ofalus a cheisiwch ei ddatrys…<3
Camau i Ddatrys y Broblem Uchod:
Yma, Iyn defnyddio NEU , OFFSET , MAX , MIN , a ROW swyddogaethau fel Fformiwla Excel i greu FOR Loop .
- Yn gyntaf, eich tasg chi yw agor llyfr gwaith newydd a mewnbynnu'r gwerthoedd uchod fesul un i'r daflen waith [cychwyn o gell C5 ] .
- Yn ail, dewiswch yr ystod gyfan [o gell C5:C34 ].
- Yn drydydd, o'r rhuban Cartref >> cliciwch ar y gorchymyn Fformatio Amodol .
- Yn olaf, dewiswch yr opsiwn Rheol Newydd o'r gwymplen.
Ar hyn o bryd, mae blwch deialog Rheol Fformatio Newydd yn ymddangos.
- Nawr, yn y ffenestr Dewiswch Fath o Reol >> ; dewiswch Defnyddiwch fformiwla i benderfynu pa gelloedd i'w fformatio opsiwn.
- Yna, yn y maes Fformatio gwerthoedd lle mae'r fformiwla hon yn wir , teipiwch y fformiwla hon:
=OR(OFFSET(C5,MAX(ROW(C$5)-ROW(C5)+3,0),0,MIN(ROW(C5)-ROW(C$5)+1,4),1)-OFFSET(C5,MAX(ROW($C$5)-ROW(C5),-3),0,MIN(ROW(C5)-ROW(C$5)+1,4),1)=3)
- Nawr, dewiswch y math o fformat priodol drwy glicio ar y botwm Fformat… yn y blwch deialog.
Ar yr adeg hon, bydd blwch deialog o'r enw Fformat Celloedd yn ymddangos.
- Nawr, o'r Llenwi opsiwn >> rhaid i chi ddewis unrhyw un o'r lliwiau. Yma, dewisais y cefndir Glas Ysgafn . Hefyd, gallwch weld y sampl ar unwaith. Yn yr achos hwn, ceisiwch ddewis unrhyw liw golau . Oherwydd gall y lliw tywyll guddio'r data a fewnbynnwyd. Yna, efallai y bydd angen i chi newid y Lliw Ffont .
- Yna, rhaid pwyso Iawn i gymhwyso'r ffurfiant.
- Ar ôl hynny, mae'n rhaid i chi bwyso Iawn ar y Rheol Fformatio Newydd blwch deialog. Yma, gallwch weld y sampl ar unwaith yn y blwch Rhagolwg .
Yn olaf, fe gewch y rhifau wedi'u fformatio.
0>Gadewch i mi ddangos yr algorithm i chi i ddatrys y broblem uchod:
- Yma, er mwyn gwneud i chi ddeall yr algorithm yn hawdd, fe wnaf Eglurwch yr holl beth gyda dwy gell gyfeirio: celloedd C11 a C17 . Mewn celloedd C11 a C17 , y gwerthoedd yw 10 a 20 yn y drefn honno (llun uchod). Os ydych chi wedi arfer â fformiwlâu Excel, yna gallwch chi arogli'r swyddogaeth OFFSET , gan fod swyddogaeth OFFSET yn gweithio gyda phwyntiau cyfeirio.
- Nawr, dychmygwch fy mod yn cymryd y gwerthoedd o ystodau celloedd C8:C11 & C11:C14 , a C14:C17 & C17: C20 ochr yn ochr [delwedd isod]. Celloedd cyfeirio yw C11 a C17 ac rwy'n cymryd cyfanswm o 7 o gelloedd o amgylch y gell gyfeirio. Fe gewch lun dychmygol fel y canlynol. O'r rhan gyntaf, gallwch ddod o hyd i batrwm o'r ddelwedd. C9–C12=3 , C10-C13=3 , mae patrwm. Ond ar gyfer yr ail ran, nid oes patrwm o'r fath.
- Felly, gadewch i ni adeiladu'r algorithm gan gadw'r patrwm uchod mewn cof. Cyn adeiladu'r fformiwla gyffredin, byddaf yn dangos beth fydd y fformiwlâu ar gyfer ycelloedd C11 a C17 ac yna bydd yn addasu'r fformiwla i'w gwneud yn gyffredin i bawb. Ar gyfer pwynt cyfeirio (fel C11 neu C17 ), byddaf yn cymryd cyfanswm o 7 celloedd o'i gwmpas (gan gynnwys y pwynt cyfeirio) a'u gosod ochr yn ochr. ochr yn y fformiwla creu araeau. Yna byddaf yn darganfod gwahaniaeth yr araeau os yw unrhyw un o'r gwahaniaethau yn hafal i 3 y bydd y gell cyfeirio yn cael ei brisio GWIR .
- Yma, gallaf gwnewch hynny'n hawdd gan ddefnyddio'r ffwythiant OFFSET gan fod y ffwythiant OFFSET yn dychwelyd arae. Dywedwch am gyfeirnod cell C11 , gallaf ysgrifennu'r fformiwla fel hyn: = OR(OFFSET(C11, 0, 0, 4, 1) - OFFSET(C11, -3, 0, 4, 1)=3) . Beth fydd y fformiwla hon yn ei ddychwelyd? Bydd ffwythiant gwrthbwyso cyntaf y fformiwla yn dychwelyd arae: {10; 11; 12; 15} , bydd ail swyddogaeth gwrthbwyso yn dychwelyd arae {5; 8; 9; 10} . Ac rydych chi'n gwybod {10; 11; 12; 15} – {5; 8; 9; 10} = {10-5; 11-8; 12-9; 15-10} = {5; 3; 3; 5} . Pan fydd yr arae hon yn cael ei phrofi'n rhesymegol gyda =3 yna mae Excel yn cyfrifo'n fewnol fel hyn: {5=3; 3=3; 3=3; 5=3} = {Gau; Gwir; Gwir; Anghywir} . Pan fydd y ffwythiant OR yn cael ei gymhwyso ar yr arae yma: OR({Gau; Gwir; Gau; Gwir} , byddwch yn cael TRUE . Felly cell C11 yn cael gwir werthoedd fel y'u dychwelwyd.
- Felly, rwy'n meddwl bod gennych y cysyniad cyfan o sut mae'r algorithm hwn yn mynd i weithio. Nawr mae problem. Gall y fformiwla hon weithio ocell C8 , uwchben cell C8 , mae 3 celloedd. Ond ar gyfer celloedd C5, C6, a C7 ni all y fformiwla hon weithio. Felly dylid addasu'r fformiwla ar gyfer y celloedd hyn.
- Nawr, ar gyfer celloedd C5 i C7 , rydym am i'r fformiwla beidio â chymryd i ystyriaeth y <1 uchaf> 3 cell. Er enghraifft, ar gyfer cell C6 , ni fydd ein fformiwla yn debyg i'r fformiwla ar gyfer cell C11 : = NEU (GWILIO (C11, 0, 0, 4, 1) - OFFSET(C11, -3, 0, 4, 1)=3) .
- Yma, ar gyfer cell C5 , bydd y fformiwla fel: NEU (Gwrthosod (C5, 3, 0, 1, 1)-GWRTHOD(C5, 0, 0, 1, 1)=3) .
- Yna, ar gyfer cell C6 , mae'r bydd y fformiwla fel: NEU(OFFSET(C6, 2, 0, 2, 1) - OFFSET(C6, -1, 0, 2, 1)=3) .
- Ar ôl y bydd y fformiwla, ar gyfer cell C7 , fel: NEU (Gwrthosod (C7, 1, 0, 3, 1) - OFFSET(C7, -2, 0, 3, 1) = 3) .
- Eto, ar gyfer cell C8 , bydd y fformiwla fel: NEU(GWRTHSET(C8, 0, 0, 4, 1)-OFFSET( C8,-3, 0, 4, 1)=3) ; [dyma'r fformiwla gyffredinol].
- Yna, ar gyfer cell C9 , bydd y fformiwla fel: NEU(GWRTHSET(C9, 0, 0, 4, 1)- OFFSET(C9,-3, 0, 4, 1)=3) ; [dyma'r fformiwla gyffredinol].
- Yn olaf, ydych chi'n dod o hyd i rai patrymau o'r fformiwlâu uchod? Mae dadl rhesi ffwythiant OFFSET gyntaf wedi gostwng o 3 i 0 ; mae'r ddadl uchder wedi cynyddu o 1 i 4 . Mae dadl rhesi'r ail swyddogaeth OFFSET wedi gostwng o 0 i -3 ac mae dadl uchder wedi cynyddu o 1 i 4 .
- Yn gyntaf, y <1 cyntaf Bydd dadl rhesi swyddogaeth>OFFSET yn cael ei haddasu fel hyn: MAX(ROW(C$5)-ROW(C5)+3,0)
- Yn ail, yr ail Bydd dadl rhesi ffwythiant OFFSET yn cael ei haddasu fel hyn: MAX(ROW(C$5)-ROW(C5),-3)
- Yn drydydd, y Gwrthosod Cyntaf bydd dadl uchder swyddogaeth yn cael ei haddasu fel hyn: MIN(ROW(C5)-ROW(C$5)+1,4)
- Yn bedwerydd, yr ail OFFSET bydd dadl uchder ffwythiant yn cael ei addasu fel hyn: MIN(ROW(C5)-ROW(C$5)+1,4)
- Nawr, ceisiwch ddeall yr addasiad uchod. Nid yw'r rhain mor anodd eu deall. Mae'r holl addasiadau pedwar hyn yn gweithio fel FOR LOOP o Excel VBA ond rydw i wedi eu hadeiladu gyda Fformiwlâu Excel.
- Felly, fe gawsoch chi'r ffyrdd sut mae'r fformiwla gyffredinol yn gweithio ar gyfer y celloedd o C5:C34 .
Felly roeddwn i'n siarad am Looping in Excel taenlenni. Felly, mae hon yn enghraifft berffaith o ddolennu yn Excel. Yma, bob tro mae'r fformiwla yn cymryd 7 celloedd ac yn gweithio ar y celloedd i ddarganfod gwerth penodol.
2. Defnyddio IF & NEU Swyddogaethau i Greu AR GYFER Dolen yn Excel
Yn yr enghraifft hon, mae'n debyg eich bod am wirio a yw'r celloedd yn cynnwys unrhyw werthoedd ai peidio. Ar ben hynny, gydag Excel VBA FOR Loop, gallwch chi wneud hyn yn hawdd ond yma, byddaf yn gwneud hynny gan ddefnyddio fformiwla Excel.
Nawr, gallwch chi ddefnyddioMae y IF , a'r OR yn gweithredu fel Fformiwla Excel i greu FOR Loop . Ar ben hynny, gallwch chi addasu'r fformiwla hon yn ôl eich dewis. Rhoddir y camau isod.
Camau:
- Yn gyntaf, rhaid i chi ddewis cell wahanol E5 lle rydych am weld y Statws .
- Yn ail, dylech ddefnyddio'r fformiwla gyfatebol yn y gell E5 .
=IF(OR(B5="",C5="",D5=""),"Info Missing","Done")
- Yn dilyn hynny, pwyswch ENTER i gael y canlyniad.
Dadansoddiad Fformiwla
Yma, bydd y ffwythiant OR yn dychwelyd TRUE os daw unrhyw rai o'r rhesymeg a roddwyd yn GWIR .
- Yn gyntaf, B5="" yw'r rhesymeg 1af , a fydd yn gwirio a yw'r gell B5 yn cynnwys unrhyw rai gwerth neu beidio.
- Yn ail, C5="" yw'r rhesymeg 2il , a fydd yn gwirio a yw'r gell C5 yn cynnwys unrhyw werth neu ddim.
- Yn drydydd, D5=”” yw'r 3ydd rhesymeg. Yn yr un modd, a fydd yn gwirio a yw'r gell D5 yn cynnwys unrhyw werth ai peidio.
Nawr, mae'r ffwythiant IF yn dychwelyd y canlyniad a fydd yn cyflawni amod penodol .
- Pan fydd ffwythiant NEU yn rhoi TRUE yna fe gewch “ Gwybodaeth ar Goll ” fel Statws . Fel arall, byddwch yn cael “ Gwneud ” fel y Statws .
- Ar ôl hynny, mae'n rhaid i chi lusgo'r Llenwad Handle eicon i AutoFill y data cyfatebol yng ngweddilly celloedd E6:E13 . Neu gallwch glicio ddwywaith ar yr eicon Fill Handle .
Yn olaf, fe gewch yr holl ganlyniadau .
3. Defnyddio Swyddogaeth SUMIFS i Greu AR GYFER Dolen yn Excel
Tybiwch, eich bod am wneud cyfanswm y bil ar gyfer person penodol. Yn yr achos hwnnw, gallwch ddefnyddio'r FOR Loop gan ddefnyddio fformiwla Excel. Yma, byddaf yn defnyddio swyddogaeth SUMIFS i greu'r FOR Loop yn Excel. Rhoddir y camau isod.
Camau:
- Yn gyntaf, mae'n rhaid i chi ddewis cell wahanol F7 lle rydych am weld y Statws .
- Yn ail, dylech ddefnyddio'r fformiwla gyfatebol yn y gell F7 .
=SUMIFS($C$5:$C$13,$B$5:$B$13,E7)
- Yn dilyn hynny, pwyswch ENTER i gael y canlyniad.
Dadansoddiad Fformiwla
- Yma, $C$5:$C$13 yw'r amrediad data y mae'r SUMIFS yn ei ddefnyddio bydd y ffwythiant yn gwneud y crynhoi.
- Yna, $B$5:$B$13 yw'r amrediad data o ble bydd y ffwythiant SUMIFS yn gwirio'r meini prawf a roddwyd
- Yn olaf, E7 yw'r meini prawf.
- Felly, bydd swyddogaeth SUMIFS yn ychwanegu'r taliadau ar gyfer gwerth cell E7 .
- Ar ôl hynny, mae'n rhaid i chi lusgo'r eicon Fill Handle i AutoFill y data cyfatebol yng ngweddill y celloedd F8:F10 .
Yn olaf, fe gewch y canlyniad.
Casgliad
Gobeithiwn y byddwchroedd yr erthygl hon yn ddefnyddiol. Yma, rydym wedi esbonio 3 enghreifftiau addas i wneud FOR Loop yn Excel gan ddefnyddio fformiwlâu. Gallwch ymweld â'n gwefan Exceldemy i ddysgu mwy am gynnwys sy'n gysylltiedig ag Excel. Os gwelwch yn dda, gollyngwch sylwadau, awgrymiadau, neu ymholiadau os oes gennych unrhyw rai yn yr adran sylwadau isod.