Efnisyfirlit
Viltu ekki nota Excel VBA og vilt búa til FOR Loop í Excel með formúlu? Í þessari grein hef ég sýnt hvernig þú getur búið til FOR Loop með því að nota formúlur.
Ef þú veist hvernig á að kóða með Excel VBA , þá ertu blessaður 🙂 . En ef þú skrifaðir aldrei kóða í VBA eða vilt hafa Excel vinnubókina þína lausa við Excel VBA kóða, þá þarftu oftast að hugsa út fyrir kassann til að búa til einföld lykkja .
Sæktu vinnuskrá
Sæktu vinnuskrána af hlekknum hér að neðan:
Gerðu lykkju með formúlum. xlsx3 dæmi til að búa til FYRIR lykkju í Excel með því að nota formúlu
Hér mun ég sýna 3 dæmi til að búa til FOR lykkju í Excel með því að nota a formúlu. Við skulum sjá ítarleg dæmi.
1. Notkun samsettra aðgerða til að búa til FOR Loop í Excel
Láttu mig nú vita bakgrunninn sem hvetur mig til að skrifa þetta dæmi.
Ég er höfundur nokkurra námskeiða um Udemy. Eitt af námskeiðunum er um Excel skilyrt snið. Titill námskeiðsins er: Lærðu Excel skilyrt snið með 7 hagnýtum vandamálum. [ til að fá ókeypis aðgang að þessu námskeiði, smelltu hér ].
Í umræðuborði námskeiðsins , nemandi spurði mig spurningar eins og hér að neðan [skjáskotmynd].
Spurning sem nemandi í Udemy spurði.
Lestu spurninguna hér að ofan vandlega og reyndu að leysa hana...
Skref til að leysa vandamálið hér að ofan:
Hér, égmun nota OR , OFFSET , MAX , MIN og ROW aðgerðir sem Excel formúlu til að búa til FYRIR lykkju .
- Í fyrsta lagi er starf þitt að opna nýja vinnubók og setja inn ofangreind gildi eitt af öðru í vinnublaðið [byrjaðu á reit C5 ] .
- Í öðru lagi, veldu allt sviðið [úr reit C5:C34 ].
- Í þriðja lagi, af Home borði >> smelltu á skipunina Skilyrt snið .
- Að lokum skaltu velja Ný regla valmöguleikann í fellivalmyndinni.
Á þessum tíma birtist gluggi Ný sniðreglu .
- Nú, í glugganum Veldu reglu >> ; veldu Notaðu formúlu til að ákvarða hvaða frumur á að forsníða .
- Sláðu síðan inn þessa formúlu í Sniðgildi þar sem þessi formúla er sönn reitinn:
=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)
- Veldu nú viðeigandi sniðtegund með því að smella á hnappinn Format... í glugganum.
Á þessum tíma mun gluggi sem heitir Format Cells birtast.
- Nú, frá Fylltu valkostinn >> þú verður að velja einhvern af litunum. Hér valdi ég Ljósblár bakgrunninn. Einnig geturðu séð sýnishornið samstundis. Í þessu tilfelli skaltu reyna að velja hvaða ljósa lit sem er. Vegna þess að dökki liturinn gæti falið innslátt gögn. Þá gætirðu þurft að breyta leturliti .
- Þá verður þú að ýta á Í lagi til að beita mynduninni.
- Eftir það þarftu að ýta á OK á OK 1>Ný sniðregla valmynd. Hér geturðu séð sýnishornið samstundis í Preview reitnum.
Að lokum færðu sniðnar tölur.
Leyfðu mér að sýna þér reikniritið til að leysa ofangreint vandamál:
- Hér, til að gera þér kleift að skilja reikniritið auðveldlega, mun ég útskýrðu allt með tveimur viðmiðunarfrumum: frumum C11 og C17 . Í frumum C11 og C17 eru gildin 10 og 20 í sömu röð (fyrir ofan myndina). Ef þú ert vanur Excel formúlum, þá finnurðu lyktina af OFFSET fallinu, þar sem OFFSET fallið virkar með viðmiðunarpunktum.
- Ímyndaðu þér nú að ég sé að taka gildin af frumusviðum C8:C11 & C11:C14 og C14:C17 & C17: C20 hlið við hlið [mynd að neðan]. Tilvísunarfrumur eru C11 og C17 og ég er að taka samtals 7 frumur í kringum viðmiðunarreitinn. Þú færð ímyndaða mynd eins og hér að neðan. Frá fyrsta hluta má finna mynstur úr myndinni. C9–C12=3 , C10-C13=3 , það er mynstur. En fyrir seinni hlutann er ekkert slíkt mynstur.
- Svo skulum við byggja reikniritið með því að hafa ofangreint mynstur í huga. Áður en ég byggi upp sameiginlegu formúluna skal ég sýna hvaða formúlur verða fyrirfrumur C11 og C17 og mun síðan breyta formúlunni til að gera hana sameiginlega fyrir alla. Fyrir viðmiðunarpunkt (eins og C11 eða C17 ), skal ég taka samtals 7 frumur í kringum hann (þar á meðal viðmiðunarpunktinn) og setja þær hlið við hlið í formúlunni að búa til fylki. Þá mun ég finna út muninn á fylkjunum ef einhver munurinn er jafn 3 að viðmiðunarreiturinn verði TRUE metinn.
- Hér get ég gerðu það auðveldlega með því að nota OFFSET aðgerðina þar sem aðgerðin OFFSET skilar fylki. Segðu til frumviðmiðunar C11 , ég get skrifað formúluna svona: =OR(OFFSET(C11, 0, 0, 4, 1)-OFFSET(C11, -3, 0, 4, 1)=3) . Hverju mun þessi formúla skila? Fyrsta offsetfall formúlunnar mun skila fylki: {10; 11; 12; 15} , önnur offsetaðgerð mun skila fylki {5; 8; 9; 10} . Og þú veist {10; 11; 12; 15} – {5; 8; 9; 10} = {10-5; 11-8; 12-9; 15-10} = {5; 3; 3; 5} . Þegar þetta fylki er rökrétt prófað með =3 þá reiknar Excel innbyrðis svona: {5=3; 3=3; 3=3; 5=3} = {Ósatt; Satt; Satt; Rangt . Þegar OR fallinu er beitt á þessa fylki: OR({False; True; False; True} færðu TRUE . Svo reit C11 fær sönn gildi sem skilað.
- Svo ég held að þú hafir fengið alla hugmyndina um hvernig þetta reiknirit mun virka. Núna er vandamál. Þessi formúla getur virkað fráreit C8 , fyrir ofan reit C8 , eru 3 frumur. En fyrir frumur C5, C6, og C7 getur þessi formúla ekki virkað. Þannig að formúlunni ætti að breyta fyrir þessar frumur.
- Nú, fyrir frumur C5 til C7 , viljum við að formúlan taki ekki tillit til efri 3 frumur. Til dæmis, fyrir reit C6 , mun formúlan okkar ekki vera eins og formúlan fyrir reit C11 : =OR(OFFSET(C11, 0, 0, 4, 1)- OFFSET(C11, -3, 0, 4, 1)=3) .
- Hér, fyrir reit C5 , verður formúlan svona: OR(OFFSET (C5, 3, 0, 1, 1)-OFFSET(C5, 0, 0, 1, 1)=3) .
- Þá, fyrir reit C6 , formúlan verður svona: OR(OFFSET(C6, 2, 0, 2, 1)-OFFSET(C6, -1, 0, 2, 1)=3) .
- Eftir að fyrir reit C7 verður formúlan svona: OR(OFFSET(C7, 1, 0, 3, 1)-OFFSET(C7, -2, 0, 3, 1)= 3) .
- Aftur, fyrir reit C8 , mun formúlan vera svona: OR(OFFSET(C8, 0, 0, 4, 1)-OFFSET( C8,-3, 0, 4, 1)=3)2; [þetta er almenna formúlan].
- Þá, fyrir reit C9 , verður formúlan svona: OR(OFFSET(C9, 0, 0, 4, 1)- OFFSET(C9,-3, 0, 4, 1)=3) ; [þetta er almenna formúlan].
- Að lokum, finnurðu nokkur mynstur úr formúlunum hér að ofan? Fyrstu OFFSET línurarviðmið fallsins hefur minnkað úr 3 í 0 ; hæðarröksemdin hefur aukist úr 1 í 4 . Raðirarviðmið annars OFFSET fallsins hefur minnkað frá 0 í -3 og hæðarrök hafa aukist úr 1 í 4 .
- Í fyrsta lagi, fyrsta OFFSET línur fallinu verður breytt á þessa leið: MAX(ROW(C$5)-ROW(C5)+3,0)
- Í öðru lagi, annað OFFSET raðir falla verður breytt á þessa leið: MAX(ROW(C$5)-ROW(C5),-3)
- Í þriðja lagi, fyrsta OFFSET
fallsins verður breytt á þessa leið: MIN(ROW(C5)-ROW(C$5)+1,4) - Í fjórða lagi, annað OFFSET Hæðarviðmið fallsins verður breytt á þessa leið: MIN(ROW(C5)-ROW(C$5)+1,4)
- Reyndu nú að skilja breytinguna hér að ofan. Þetta er ekki svo erfitt að skilja. Allar þessar fjórar breytingar virka sem FYRIR LOOP á Excel VBA en ég hef smíðað þær með Excel formúlum.
- Svo, þú fékkst hvernig almennu formúlan er. virkar fyrir frumurnar frá C5:C34 .
Svo ég var að tala um Looping í Excel töflureiknum. Svo þetta er fullkomið dæmi um lykkju í Excel. Hér, í hvert skipti sem formúlan tekur 7 frumur og vinnur á frumunum til að finna út ákveðið gildi.
2. Notkun IF & OR Aðgerðir til að búa til FOR Loop í Excel
Í þessu dæmi, segjum að þú viljir athuga hvort frumurnar innihalda einhver gildi eða ekki. Ennfremur, með Excel VBA FOR Loop, geturðu gert þetta auðveldlega en hér mun ég gera það með því að nota Excel formúlu.
Nú geturðu notað IF og OR virka sem Excel formúla til að búa til FOR Loop . Ennfremur geturðu breytt þessari formúlu eftir því sem þú vilt. Skrefin eru gefin hér að neðan.
Skref:
- Í fyrsta lagi þarftu að velja annan reit E5 þar sem þú vilt sjá Staðan .
- Í öðru lagi ættir þú að nota samsvarandi formúlu í E5 reitnum.
=IF(OR(B5="",C5="",D5=""),"Info Missing","Done")
- Í kjölfarið skaltu ýta á ENTER til að fá niðurstöðuna.
Formúlusundurliðun
Hér mun EÐA fallið skila TRUE ef eitthvað af tilteknum rökfræði verður TRUE .
- Í fyrsta lagi, B5=”” er 1. rökfræðin, sem mun athuga hvort hólfið B5 inniheldur einhverjar gildi eða ekki.
- Í öðru lagi er C5=”” 2nd rökfræðin, sem mun athuga hvort hólfið C5 inniheldur eitthvað gildi eða ekki.
- Í þriðja lagi, D5=”” er 3. rökfræðin. Á sama hátt, sem mun athuga hvort reiturinn D5 inniheldur eitthvert gildi eða ekki.
Nú, IF fallið skilar niðurstöðunni sem mun uppfylla tiltekið skilyrði .
- Þegar OR aðgerðin gefur TRUE þá færðu " Upplýsingar vantar " sem Status . Annars færðu " Done " sem Status .
- Eftir það þarftu að draga Fill Handle táknið til að Sjálfvirk útfylling samsvarandi gögnum í restinni affrumurnar E6:E13 . Eða þú getur tvísmellt á Fill Handle táknið.
Loksins færðu allar niðurstöðurnar .
3. Notaðu SUMIFS aðgerðina til að búa til FOR Loop í Excel
Segjum að þú viljir gera heildarreikninginn fyrir ákveðinn einstakling. Í því tilviki geturðu notað FOR lykkjuna með því að nota Excel formúluna. Hér mun ég nota SUMIFS aðgerðina til að búa til FOR Loop í Excel. Skrefin eru gefin hér að neðan.
Skref:
- Í fyrsta lagi þarftu að velja annan reit F7 þar sem þú vilt sjá Staðan .
- Í öðru lagi ættir þú að nota samsvarandi formúlu í F7 reitnum.
=SUMIFS($C$5:$C$13,$B$5:$B$13,E7)
- Í kjölfarið skaltu ýta á ENTER til að fá niðurstöðuna.
Formúlusundurliðun
- Hér er $C$5:$C$13 gagnasviðið sem SUMIFS fall mun gera samantektina.
- Þá er $B$5:$B$13 gagnasviðið þar sem SUMIFS fallið athugar tilgreind skilyrði
- Að lokum er E7 viðmiðið.
- Svo mun aðgerðin SUMIFS bæta við greiðslunum fyrir E7 hólfsgildið.
- Eftir það þarftu að draga Fill Handle táknið til að fylla út sjálfkrafa samsvarandi gögn í restinni af reitunum F8:F10 .
Loksins færðu niðurstöðuna.
Niðurstaða
Við vonum að þúfannst þessi grein gagnleg. Hér höfum við útskýrt 3 hentug dæmi til að búa til FOR Loop í Excel með formúlum. Þú getur heimsótt vefsíðu okkar Exceldemy til að læra meira Excel tengt efni. Vinsamlegast sendu athugasemdir, tillögur eða fyrirspurnir ef þú hefur einhverjar í athugasemdahlutanum hér að neðan.