Tabela e përmbajtjes
Në këtë artikull, unë do t'ju tregoj se si mund të analizoni situatën në Excel VBA nëse një qelizë përmban një vlerë. Do të mësoni të analizoni situatën si për çdo vlerë ashtu edhe për një vlerë të veçantë.
Analiza e Excel VBA: Nëse qelia përmban një vlerë, atëherë (Pamje e shpejtë)
3484
Shkarko librin e punës praktike
Shkarko këtë libër pune praktike për t'u ushtruar ndërkohë që je duke lexuar këtë artikull.
VBA If Cell Contains Value then.xlsm
Analiza Excel VBA: Nëse qeliza përmban një vlerë, atëherë ktheni rezultatet (Analiza hap pas hapi)
Këtu kemi një grup të dhënash me notat e disa studentëve në Fizikë, Kimi, dhe Matematika në një shkollë të quajtur Kopshti i lulediellit.
Qelizat bosh nënkuptojnë se nxënësi nuk është paraqitur, domethënë ka munguar në atë provim të caktuar. Tani le të analizojmë situatën, nëse një qelizë përmban një vlerë apo jo, me këtë grup të dhënash.
⧪ Hapi 1: Deklarimi i qelizës
Së pari, duhet të deklarojmë qelizën vlerën e së cilës duam ta analizojmë. Le të analizojmë nëse Jennifer Marlo u shfaq në provimin e fizikës apo jo.
Prandaj, duhet të kontrollojmë nëse qeliza C12 përmban një vlerë apo jo.
Për ta bërë këtë, së pari, ne duhet të deklarojmë qelizën C12 .
Rreshti i kodit për ta realizuar këtë do të jetë:
2745
⧪ Hapi 2: Kontrollimi nëse qeliza përmban një vlerë (përfshirë një vlerë të veçantë)
Më pas, ne duhet të kontrollojmë nëseqeliza përmban një vlerë ose jo. Ne do ta ekzekutojmë këtë duke përdorur një kusht If . Rreshti i kodit do të jetë:
9856
Ky kod do të ekzekutohet nëse qeliza përmban ndonjë vlerë. Për të kontrolluar për një vlerë (për shembull, nëse përmban 100 apo jo), përdorni atë vlerë specifike me një simbol E barabartë me .
9213
⧪ Hapi 3: Ndarja e detyrës
Pastaj ju duhet të konfiguroni një detyrë që do të ekzekutohet nëse qeliza përmban një vlerë (ose një vlerë specifike).
Këtu duam të shfaqim mesazhin "Jennifer Marlo u shfaq në provimin e fizikës." . Pra, rreshti i kodit do të jetë:
5535
⧪ Hapi 4: Përfundimi i bllokut If
Më në fund, duhet të deklaroni një fund të bllokut If.
3329
Pra, kodi i plotë VBA do të jetë:
⧭ Kodi VBA:
4737
⧭ Dalja:
Ekzekutoni këtë kod duke klikuar butonin Run Sub/UserForm në shiritin e veglave.
Do të shfaqë mesazhin "Jennifer Marlo u shfaq në provimin e fizikës." pasi qeliza C12 përmban një vlerë, prej 50 .
Shembuj që përfshijnë nëse qeliza përmban një vlerë, atëherë një dalje të specifikuar me Excel VBA
Ne kemi mësuar të analizojmë nëse një qelizë përmban një vlerë ose jo në VBA . Tani, le të shqyrtojmë disa shembuj për ta bërë të qartë kuptimin.
1. Zhvillimi i një makro për të filtruar një vlerë nëse qeliza përkatëse përmban ndonjë vlerë, atëherë në Excel VBA
Le të zhvillojmë një Makro për të filtruar studentët që u paraqitën në secilin prej provimeve.
Dmth, ne duhet të kontrollojmë qelizat që përmbajnë notat e secilës prej lëndëve dhe të shohim nëse ato përmbajnë një vlerë apo jo.
Nëse e bëjnë këtë, atëherë ne duhet të zgjidhim emrin e studentit përkatës.
Kodi i plotë VBA për ta realizuar këtë do të jetë:
⧭ Kodi VBA:
5916
⧭ Dalja:
Zgjidh grupin e të dhënave ( Duke përfshirë Titujt ) dhe ekzekutoni këtë Makro .
Së pari, do t'ju kërkohet të vendosni referencën e të parës qeliza ku dëshironi të dhënat e filtruara. Kam futur G3 .
Më pas kliko OK . Ju do të merrni emrat e studentëve që u paraqitën në secilin prej provimeve (përfshirë Titujt ) në një grup të ri të dhënash duke filluar nga qeliza G3 .
2. Krijimi i një funksioni të përcaktuar nga përdoruesi për të renditur një vlerë nëse qeliza përkatëse përmban një vlerë specifike, atëherë në Excel VBA
Tani do të krijojmë një funksion të përcaktuar nga përdoruesi që do të kthejë emrat e studentëve i cili mori një notë specifike në secilën nga lëndët.
Procedura është pothuajse e njëjtë me sa më sipër. Duhet të kontrollojmë qelizat që përmbajnë shenjat e secilës prej lëndëve dhe të shohim nëse ato janë të barabarta me një vlerë specifike apo jo.
Nëse janë, atëherë do të kthejmë emrin e studentit përkatës.
Kodi VBA do të jetë:
⧭ VBAKodi:
7473
⧭ Dalja:
Kodi krijon një funksion të quajtur Qelizat_me_Vlerat që merr dy argumente, një Valë dhe një Vlerë .
Le të gjejmë studentët që morën 100 në secilën nga lëndët duke përdorur këtë funksion.
Zgjidhni një varg qelizash në fletën tuaj të punës dhe futni këtë funksion në qelizën e parë të diapazonit:
=Cells_with_Values(B3:E13,100)
[Këtu B3: E3 është grupi im i të dhënave (duke përfshirë Titujt ) dhe 100 është vlera ime që përputhet. Ju përdorni një tuaj.]
Më pas shtypni CTRL + SHIFT + ENTER ( Formula e grupit ). Do të kthejë një grup të përbërë nga emrat e studentëve që morën 100 në secilën lëndë, duke përfshirë Titujt .
3. Zhvillimi i një Formulari Përdoruesi për të nxjerrë një vlerë nëse qeliza përkatëse përmban ndonjë vlerë (ose një vlerë specifike) në Excel VBA
Më në fund, ne do të zhvillojmë një UserForm për të nxjerrë emrat e studentëve që u paraqitën (ose morën nota specifike) në disa provime specifike.
⧪ Hapi 1: Hapja e Formularit të Përdoruesit
Shko te Fut > Opsioni UserForm në redaktuesin VBA për të hapur një UserForm të ri. Do të hapet një UserForm i ri i quajtur UserForm1 .
⧪ Hapi 2: Zvarritja e veglave në UserForm
Përveç UserForm , ju do të merrni Toolbox . Lëvizni kursorin mbi Toolbox dhe tërhiqni 4 Etiketa (Label1, Label2,Label3, Label4) dhe 3 ListBox (ListBox1, ListBox2, ListBox3) dhe një TextBox (TextBox1) në formë drejtkëndore mbi UserForm .
Më pas tërhiqni një Etiketë (Label5) dhe një TextBox (TextBox2) në këndin e poshtëm majtas të UserForm .
Më në fund, tërhiqni një CommandButton (CommandButton1) në këndin e poshtëm djathtas.
Ndryshoni shfaqjet e Etiketave në Kollonën e kërkimit , Kollona e kthimit , Çdo vlerë ose një vlerë specifike , Vlera, dhe qeliza fillestare.
Gjithashtu, ndryshoni ekranin e CommandButton1 në OK .
⧪ Hapi 3: Shkrimi i kodit për ListBox3
Klikoni dy herë në ListBox3 . Do të hapet një Nënprocedurë Private e quajtur ListBox3_Click . Futni kodin e mëposhtëm atje.
5787
⧪ Hapi 4: Shkrimi i kodit për CommandButton1
Më pas klikoni dy herë në CommandButton1 . Një tjetër Nënprocedurë Private e quajtur CommandButton1_Click do të hapet. Futni kodin e mëposhtëm atje.
3823
⧪ Hapi 5: Shkrimi i kodit për ekzekutimin e UserForm
Më në fund, futni një Modul të ri nga VBA toolbar dhe fut kodin e mëposhtëm atje.
7986
⧪ Hapi 6: Ekzekutimi i UserForm (Dalja përfundimtare)
UserForm juaj është gati për t'u përdorur. Zgjidhni grupin e të dhënave nga fleta e punës ( B3:E13 këtu) (duke përfshirë Titujt ) dheekzekutoni Makro të quajtur Run_UserForm .
UserForm do të ngarkohet në fletën e punës. Nga tabela Kollona e kërkimit , kam zgjedhur Fizika dhe Matematika , sepse dua të marr emrat e studentëve që u shfaqën në Fizikë dhe provimet Matematika .
Nga tabela Kollona e kthimit , kam zgjedhur Emri i studentit , sepse dua të marr emrat e studentëve.
Dhe nga tabela Çdo vlerë ose vlerë specifike , kam zgjedhur Çdo vlerë .
Më në fund, në qelizën Fillimi kutinë , kam vendosur G3 .
Më pas kliko OK . Ju do të merrni emrat e studentëve që u paraqitën në provimet Fizikë dhe Matematika duke filluar nga qeliza G3 .
Nëse do të kishit zgjedhur Vlera specifike nga tabela Çdo vlerë ose vlerë specifike , do të kishit një tjetër TextBox për të futur vlerën specifike.
Këtu kam futur 100 .
Kliko OK . Dhe do të merrni studentët që morën 100 në Fizikë dhe Kimi .
Gjërat për t'u mbajtur mend
Ne kemi përdorur një grup dydimensional për të kthyer emrat e studentëve në Funksionin e Përcaktuar nga Përdoruesi të përshkruar në shembullin 2 .<3