Sadržaj
U ovom članku ću vam pokazati kako možete analizirati situaciju u programu Excel VBA ako ćelija sadrži vrijednost. Naučit ćete analizirati situaciju i za bilo koju vrijednost i za određenu vrijednost.
Excel VBA analiza: ako ćelija sadrži vrijednost onda (brzi pregled)
4150
Preuzmite radnu svesku za vježbe
Preuzmite ovu radnu svesku za vježbanje dok čitate ovaj članak.
VBA Ako ćelija sadrži vrijednost Then.xlsm
Excel VBA analiza: Ako ćelija sadrži vrijednost, onda vratite izlaze (korak po korak analiza)
Ovdje imamo skup podataka sa ocjenama nekih studenata iz fizike, hemije, i matematiku u školi koja se zove Sunflower Kindergarten.
Prazne ćelije znače da se učenik nije pojavio, odnosno da je izostao na tom ispitu. Sada analizirajmo situaciju, bez obzira da li ćelija sadrži vrijednost ili ne, sa ovim skupom podataka.
⧪ Korak 1: Deklaracija ćelije
Prvo, moramo deklarišemo ćeliju čiju vrednost želimo da analiziramo. Hajde da analiziramo da li se Jennifer Marlo pojavila na ispitu iz fizike ili ne.
Zato moramo provjeriti da li ćelija C12 sadrži vrijednost ili ne.
Da bismo to učinili, prvo, moramo deklarirati ćeliju C12 .
Linija koda da to postignemo će biti:
9984
⧪ Korak 2: Provjera sadrži li ćelija vrijednost (uključujući posebnu vrijednost)
Dalje, moramo provjeriti da lićelija sadrži vrijednost ili ne. Ovo ćemo izvršiti pomoću If uvjeta . Linija koda će biti:
6014
Ovaj kod će se izvršiti ako ćelija sadrži bilo koju vrijednost. Da biste provjerili vrijednost (Na primjer, sadrži li 100 ili ne), koristite tu specifičnu vrijednost sa simbolom Jednako .
7001
⧪ Korak 3: Dodjela zadatka
Onda morate postaviti zadatak koji će se izvršiti ako ćelija sadrži vrijednost (ili određenu vrijednost).
Ovdje želimo prikazati poruku “Jennifer Marlo se pojavila na ispitu iz fizike.” . Dakle, linija koda će biti:
7785
⧪ Korak 4: Završetak If bloka
Konačno, morate deklarisati kraj bloka If.
6022
Dakle, kompletan VBA kod će biti:
⧭ VBA kod:
4285
⧭ Izlaz:
Pokrenite ovaj kod klikom na dugme Run Sub/UserForm na alatnoj traci.
Prikazaće poruku "Jennifer Marlo se pojavila na ispitu iz fizike." pošto ćelija C12 sadrži vrijednost od 50 .
Primjeri koji uključuju ako ćelija sadrži vrijednost, a zatim specificirani izlaz s Excel VBA
Naučili smo analizirati da li ćelija sadrži vrijednost ili ne u VBA . Sada, hajde da istražimo neke primjere kako bismo razumjeli jasno.
1. Razvijanje makroa za filtriranje vrijednosti Ako odgovarajuća ćelija sadrži bilo koju vrijednost, onda u Excel VBA
Hajde da razvijemo Makro da filtriramo studente koji su se pojavili na svakom od ispita.
To jest, moramo provjeriti ćelije koje sadrže ocjene svakog od predmeta i vidjeti da li sadrže vrijednost ili ne.
Ako to urade, onda moramo riješiti ime odgovarajućeg učenika.
Kompletni VBA kod da to postignemo će biti:
⧭ VBA kod:
5896
⧭ Izlaz:
Odaberite skup podataka ( Uključujući Headers ) i pokrenite ovaj Makro .
Prvo, od vas će se tražiti da unesete referencu prvog ćeliju u kojoj želite filtrirane podatke. Unio sam G3 .
Zatim kliknite OK . Dobit ćete imena studenata koji su se pojavili na svakom od ispita (uključujući Zaglavlja ) u novom skupu podataka počevši od ćelije G3 .
2. Kreiranje korisnički definirane funkcije za sortiranje vrijednosti Ako odgovarajuća ćelija sadrži određenu vrijednost, onda ćemo u Excel VBA
Sada kreirati korisnički definiranu funkciju koja će vratiti imena učenika koji je dobio određenu ocjenu iz svakog od predmeta.
Procedura je skoro ista kao i gore. Moramo provjeriti ćelije koje sadrže ocjene svakog od predmeta i vidjeti jesu li jednake određenoj vrijednosti ili ne.
Ako jesu, vratit ćemo ime odgovarajućeg učenika.
Kôd VBA će biti:
⧭ VBAKod:
5391
⧭ Izlaz:
Kôd kreira funkciju pod nazivom Cells_with_Values koja uzima dva argumenta, Raspon i Vrijednost .
Hajde da saznamo studente koji su dobili 100 u svakom od predmeta koristeći ovu funkciju.
Odaberite raspon ćelija na svom radnom listu i unesite ovu funkciju u prvu ćeliju raspona:
=Cells_with_Values(B3:E13,100)
[Ovdje B3: E3 je moj skup podataka (uključujući Zaglavlja ) i 100 je moja odgovarajuća vrijednost. Vi koristite svoju.]
Zatim pritisnite CTRL + SHIFT + ENTER ( Formula niza ). Vratit će niz koji se sastoji od imena učenika koji su dobili 100 u svakom predmetu, uključujući Zaglavlja .
3. Razvijanje korisničkog obrasca za izdvajanje vrijednosti ako odgovarajuća ćelija sadrži bilo koju vrijednost (ili određenu vrijednost) u Excel VBA
Konačno ćemo razviti UserForm za izdvajanje imena studenata koji su se pojavili (ili dobili određene ocjene) na nekim specifičnim ispitima.
⧪ Korak 1: Otvaranje korisničkog obrasca
Idite na Insert > Opcija UserForm u uređivaču VBA za otvaranje novog UserForm . Novi UserForm pod nazivom UserForm1 će se otvoriti.
⧪ Korak 2: Prevlačenje alata u korisnički obrazac
Pored UserForm , dobit ćete Toolbox . Pomerite kursor preko Toolbox i prevucite 4 Labels (Label1, Label2,Label3, Label4) i 3 ListBoxes (ListBox1, ListBox2, ListBox3) i a TextBox (TextBox1) u pravokutnom obliku preko UserForm .
Zatim prevucite još jednu Label (Label5) i TextBox (TextBox2) u donji lijevi ugao UserForm .
Konačno, prevucite CommandButton (CommandButton1) u donji desni ugao.
Promijenite prikaze Oznaka u Kolona za traženje , Povratni stupac , Bilo koja vrijednost ili određena vrijednost , Vrijednost, i Početna ćelija.
Također promijenite prikaz CommandButton1 u OK .
⧪ Korak 3: Pisanje koda za ListBox3
Dvaput kliknite na ListBox3 . Otvorit će se Privatna potprocedura pod nazivom ListBox3_Click . Tamo unesite sljedeći kod.
6304
⧪ Korak 4: Pisanje koda za CommandButton1
Zatim dvaput kliknite na CommandButton1 . Još jedna Privatna potprocedura pod nazivom CommandButton1_Click će se otvoriti. Tamo unesite sljedeći kod.
2208
⧪ Korak 5: Pisanje koda za pokretanje korisničkog obrasca
Konačno, umetnite novi Module iz VBA traka sa alatkama i tamo umetnite sljedeći kod.
1482
⧪ Korak 6: Pokretanje korisničkog obrasca (konačni izlaz)
Vaš UserForm je sada spreman za upotrebu. Odaberite skup podataka sa radnog lista ( B3:E13 ovdje) (uključujući Zaglavlja ) ipokrenite Makro pod nazivom Run_UserForm .
UserForm će se učitati u radni list. Iz tabele Kolona za traženje , odabrao sam Fizika i Matematika , jer želim da dobijem imena učenika koja su se pojavila u Fizika i Matematika ispiti.
Iz tabele Povratna kolona , izabrao sam Ime učenika , jer želim da dobijem imena studenata.
I iz tabele Bilo koja vrijednost ili specifična vrijednost , odabrao sam Bilo koja vrijednost .
Konačno, u Početnoj ćeliji okvir, stavio sam G3 .
Zatim kliknite OK . Dobit ćete imena učenika koji su se pojavili na ispitima Fizike i Matematike počevši od ćelije G3 .
Da ste odabrali Specifična vrijednost iz tabele Bilo koja vrijednost ili Specifična vrijednost , imali biste drugi TextBox za unos određene vrijednosti.
Ovdje sam unio 100 .
Kliknite OK . I dobićete učenike koji su dobili 100 iz fizike i hemije .
Stvari koje treba zapamtiti
Koristili smo dvodimenzionalni niz da vratimo imena učenika u korisnički definiranoj funkciji opisanoj u primjeru 2 .