Excel VBA: Ef klefi inniheldur gildi, skilaðu þá tilgreindu úttaki

  • Deildu Þessu
Hugh West

Í þessari grein mun ég sýna þér hvernig þú getur greint ástandið í Excel VBA ef reit inniheldur gildi. Þú munt læra að greina aðstæður fyrir bæði hvaða gildi sem er og tiltekið gildi.

Excel VBA Analysis: If Cell Contains a Value then (Quick View)

9932

Download Practice Workbook

Sæktu þessa æfingabók til að æfa á meðan þú ert að lesa þessa grein.

VBA If Cell Contains Value Then.xlsm

Excel VBA greining: Ef fruma inniheldur gildi þá skila útköstum (skref fyrir skref greining)

Hér höfum við gagnasett með einkunnum nokkurra nemenda í eðlisfræði, efnafræði, og stærðfræði í skóla sem heitir Sunflower Kindergarten.

Auðu reitirnir þýða að nemandinn kom ekki fram, það er að segja var fjarverandi í því tiltekna prófi. Nú skulum við greina ástandið, hvort sem reit inniheldur gildi eða ekki, með þessu gagnasetti.

⧪ Skref 1: Tilkynning um frumuna

Fyrst verðum við að tilgreina frumuna sem við viljum greina gildi. Við skulum greina hvort Jennifer Marlo hafi komið fram í eðlisfræðiprófinu eða ekki.

Þess vegna þurfum við að athuga hvort reit C12 inniheldur gildi eða ekki.

Til að gera það, fyrst verðum við að lýsa yfir reit C12 .

Kóðalínan til að ná þessu verður:

5996

⧪ Skref 2: Athuga hvort hólfið inniheldur gildi (þar á meðal sérstakt gildi)

Næst verðum við að athuga hvorthólfið inniheldur gildi eða ekki. Við munum framkvæma þetta með If skilyrði . Kóðalínan verður:

2603

Þessi kóði verður keyrður ef hólfið inniheldur eitthvað gildi. Til að leita að gildi (Til dæmis hvort það inniheldur 100 eða ekki), notaðu það tiltekna gildi með tákninu Jafnt með .

5840

⧪ Skref 3: Úthlutun verkefnisins

Þá þarftu að setja upp verkefni sem verður keyrt ef reiturinn inniheldur gildi (eða tiltekið gildi).

Hér viljum við birta skilaboðin „Jennifer Marlo kom fram í eðlisfræðiprófi.“ . Kóðalínan verður því:

6803

⧪ Skref 4: Ending á If-blokkinni

Að lokum verður þú að lýsa yfir lok á If-blokkinni.

4031

Þannig að allur VBA kóði verður:

⧭ VBA kóða:

1517

⧭ Úttak:

Keyddu þennan kóða með því að smella á Run Sub/UserForm hnappinn á tækjastikunni.

Það mun birta skilaboðin “Jennifer Marlo birtist í eðlisfræðiprófi.” þar sem hólfið C12 inniheldur gildið 50 .

Dæmi sem fela í sér ef klefi inniheldur gildi þá tilgreint úttak með Excel VBA

Við höfum lært að greina hvort klefi inniheldur gildi eða ekki í VBA . Nú skulum við skoða nokkur dæmi til að gera skilninginn skýran.

1. Að þróa fjölvi til að sía út gildi Ef samsvarandi klefi inniheldur eitthvert gildi þá í Excel VBA

Við skulum þróa Macro til að sía út nemendur sem komu fram í hverju prófi.

Það er að segja, við verðum að athuga hólfin sem innihalda merki hvers námsefnis og sjá hvort þau innihalda gildi eða ekki.

Ef þeir gera það, þá verðum við að flokka nafn viðkomandi nemanda.

Heill VBA kóðinn til að ná þessu verður:

⧭ VBA kóða:

8765

⧭ Output:

Veldu gagnasett ( Með hausunum ) og keyrðu þetta Macro .

Fyrst verðurðu beðinn um að slá inn tilvísun þess fyrsta reit þar sem þú vilt síuð gögnin. Ég hef slegið inn G3 .

Smelltu síðan á Í lagi . Þú færð nöfn nemenda sem komu fram í hverju prófi (þar á meðal hausarnir ) í nýju gagnasetti sem byrjar í reit G3 .

2. Að búa til notendaskilgreinda aðgerð til að raða út gildi Ef samsvarandi klefi inniheldur tiltekið gildi þá í Excel VBA

Nú munum við búa til notendaskilgreint fall sem mun skila nöfnum nemenda sem fékk ákveðna einkunn í hverri grein.

Framkvæmdin er nánast sú sama og að ofan. Við verðum að athuga reitina sem innihalda merki hvers námsefnis og sjá hvort þau séu jöfn tilteknu gildi eða ekki.

Ef svo er, þá munum við skila nafni samsvarandi nemanda.

VBA kóðinn verður:

⧭ VBAKóði:

4297

⧭ Úttak:

Kóðinn býr til fall sem kallast Cells_with_Values sem tekur tvö rök, Bil og Value .

Við skulum finna út hvaða nemendur fengu 100 í hverju námsefni með því að nota þessa aðgerð.

Veldu svið hólfa í vinnublaðinu þínu og sláðu inn þessa aðgerð í fyrsta reit sviðsins:

=Cells_with_Values(B3:E13,100)

[Hér B3: E3 er gagnasettið mitt (þar á meðal hausarnir ) og 100 er samsvarandi gildið mitt. Þú notar einn.]

Ýttu síðan á CTRL + SHIFT + ENTER ( Array Formula ). Það mun skila fylki sem samanstendur af nöfnum nemenda sem fengu 100 í hverri grein, þar á meðal hausa .

3. Að þróa UserForm til að draga út gildi ef samsvarandi hólf inniheldur eitthvert gildi (eða tiltekið gildi) í Excel VBA

Að lokum munum við þróa UserForm til að draga út nöfn nemenda sem komu fram (eða fengu sérstakar einkunnir) í sumum tilteknum prófum.

⧪ Skref 1: Opnun notendaeyðublaðsins

Farðu í Setja inn > UserForm valmöguleikann í VBA ritlinum til að opna nýtt UserForm . Nýtt UserForm sem heitir UserForm1 verður opnað.

⧪ Skref 2: Dragðu verkfæri í UserForm

Fyrir utan UserForm færðu Toolbox . Færðu bendilinn yfir Verkjakassann og dragðu 4 merkimiða (Label1, Label2,Label3, Label4) og 3 ListBoxes (ListBox1, ListBox2, ListBox3) og TextBox (TextBox1) í rétthyrndu formi yfir UserForm .

Dragðu síðan annað Label (Label5) og TextBox (TextBox2) neðst í vinstra horninu á UserForm .

Dragðu að lokum CommandButton (CommandButton1) neðst í hægra horninu.

Breyttu skjánum á Labels í Útlitsdálkur , Skila dálki , Hvaða gildi eða tiltekið gildi , Gildi, og upphafshólf.

Breyttu líka skjánum á Command Button1 í OK .

⧪ Skref 3: Að skrifa kóða fyrir ListBox3

Tvísmelltu á ListBox3 . Privat undirferli sem heitir ListBox3_Click opnast. Sláðu inn eftirfarandi kóða þar.

9935

⧪ Skref 4: Að skrifa kóða fyrir CommandButton1

Smelltu síðan á CommandButton1 . Önnur Private Subprocedure sem heitir CommandButton1_Click mun opnast. Sláðu inn eftirfarandi kóða þar.

9019

⧪ Skref 5: Að skrifa kóða til að keyra notandaformið

Að lokum skaltu setja inn nýja einingu úr VBA tækjastikan og settu eftirfarandi kóða inn þar.

8223

⧪ Skref 6: Keyrir UserForm (The Final Output)

UserForm þitt er nú tilbúið til notkunar. Veldu gagnasettið úr vinnublaðinu ( B3:E13 hér) (þar á meðal hausarnir ) ogkeyrðu Macro sem heitir Run_UserForm .

UserForm verður hlaðið í vinnublaðið. Í uppflettisdálknum töflunni hef ég valið Eðlisfræði og Stærðfræði , vegna þess að ég vil fá nöfn nemenda sem birtust í Eðlisfræði og Stærðfræði prófum.

Úr Return Column töflunni hef ég valið Student Name , vegna þess að ég vil fá nöfn nemenda.

Og úr Allt gildi eða sérstakt gildi töflunni hef ég valið Allt gildi .

Að lokum, í Starthólfinu box, ég hef sett G3 .

Smelltu svo á OK . Þú færð nöfn þeirra nemenda sem komu fram í Eðlisfræði og Stærðfræði prófum sem byrja í reit G3 .

Ef þú hefðir valið Sérstakt gildi úr töflunni Allt gildi eða sérstakt gildi , hefðirðu fengið annan Textakassa til að slá inn tiltekið gildi.

Hér hef ég slegið inn 100 .

Smelltu á OK . Og þú munt fá nemendur sem fengu 100 í Eðlisfræði og Efnafræði .

Hlutur sem þarf að muna

Við notuðum tvívíddar fylki til að skila nöfnum nemenda í notendaskilgreindri aðgerð sem lýst er í dæmi 2 .

Hugh West er mjög reyndur Excel þjálfari og sérfræðingur með yfir 10 ára reynslu í greininni. Hann er með BA gráðu í bókhaldi og fjármálum og meistaragráðu í viðskiptafræði. Hugh hefur ástríðu fyrir kennslu og hefur þróað einstaka kennsluaðferð sem auðvelt er að fylgja eftir og skilja. Sérfræðiþekking hans á Excel hefur hjálpað þúsundum nemenda og fagfólks um allan heim að bæta færni sína og skara fram úr í starfi. Í gegnum bloggið sitt deilir Hugh þekkingu sinni með heiminum og býður upp á ókeypis Excel námskeið og netþjálfun til að hjálpa einstaklingum og fyrirtækjum að ná fullum möguleikum.