Si të përdorni If-Then në Excel 2016 VBA

If-Then është struktura më e rëndësishme e kontrollit të VBA. Ju ndoshta do ta përdorni këtë komandë në baza ditore. Përdorni strukturën If-Then kur dëshironi të ekzekutoni një ose më shumë deklarata me kusht. Klauzola opsionale Tjetër, nëse përfshihet, ju lejon të ekzekutoni një ose më shumë deklarata nëse kushti që po testoni nuk është i vërtetë. Këtu është një procedurë e thjeshtë CheckUser, e rikoduar për të përdorur strukturën If-Then-Else:

Sub CheckUser2()
  Emri i përdoruesit = InputBox ("Futni emrin tuaj: ")
  Nëse Emri i Përdoruesit = "Satya Nadella" Atëherë
    MsgBox ("Mirë se erdhe Satya...")
'…[Më shumë kod këtu]…
  Përndryshe
    MsgBox “Më falni. Vetëm Satya Nadella mund ta drejtojë këtë.”
  Fundi Nëse
Fundi Nën

Nëse-Atëherë shembuj

Rutina e mëposhtme demonstron strukturën If-Then pa klauzolën opsionale Else:

Nën GreetMe()
  Nëse koha < 0,5, atëherë MsgBox "Mirëmëngjes"
Fundi Nën

Procedura GreetMe përdor funksionin Koha e VBA për të marrë kohën e sistemit. Nëse ora aktuale është më pak se 0,5, rutina shfaq një përshëndetje miqësore. Nëse Koha është më e madhe ose e barabartë me 0,5, rutina përfundon dhe asgjë nuk ndodh.

Për të shfaqur një përshëndetje tjetër nëse Koha është më e madhe ose e barabartë me 0,5, mund të shtoni një deklaratë tjetër If-Then pas të parës:

Nën GreetMe2 ()
  Nëse koha < 0,5, atëherë MsgBox "Mirëmëngjes"
  Nëse koha >= 0,5, atëherë MsgBox "Mirëdita"
Fundi Nën

Vini re se >= (më e madhe ose e barabartë me) përdoret për deklaratën e dytë If-Then. Kjo siguron që e gjithë dita të jetë e mbuluar. Po të ishte përdorur > (më e madhe se) nuk do të shfaqej asnjë mesazh nëse kjo procedurë do të ekzekutohej saktësisht në orën 12:00 të mesditës. Kjo është shumë e pamundur, por me një program të rëndësishëm si ky, ju nuk dëshironi të rrezikoni.

Një shembull Nëse-Atëherë-Else

Një qasje tjetër ndaj problemit të mëparshëm përdor klauzolën Tjetër. Këtu është e njëjta rutinë e rikodifikuar për të përdorur strukturën If-Then-Else:

Nën GreetMe3()
  Nëse koha < 0.5, atëherë MsgBox "Mirëmëngjesi" Tjetër _
    MsgBox "Mirëdita"
Fundi Nën

Vini re se karakteri i vazhdimit të rreshtit (nënvizimi) është përdorur në shembullin e mëparshëm. Deklarata If-Then-Else është në fakt një deklaratë e vetme. VBA ofron një mënyrë paksa të ndryshme të kodimit të konstrukteve If-Then-Else që përdorin një deklaratë End If. Prandaj, procedura GreetMe mund të rishkruhet si

Nën GreetMe4()
  Nëse Koha < 0.5 Atëherë
    MsgBox "Mirëmëngjes"
  Përndryshe
    MsgBox "Mirëdita"
  Fundi Nëse
Fundi Nën

Në fakt, mund të futni çdo numër deklaratash nën pjesën If dhe çdo numër deklaratash nën pjesën Tjetër. Kjo sintaksë është më e lehtë për t'u lexuar dhe i bën deklaratat më të shkurtra.

Po sikur të duhet të zgjerosh rutinën GreetMe për të përballuar tre kushte: mëngjes, pasdite dhe mbrëmje? Ju keni dy opsione: Përdorni tre deklarata If-Then ose përdorni një strukturë të mbivendosur If-Then-Else. Folezim nënkupton vendosjen e një strukture If-Then-Else brenda një strukture tjetër If-Then-Else. Qasja e parë, duke përdorur tre deklarata If-Then, është më e thjeshtë:

Nën GreetMe5()
 Dim Msg As String
 Nëse koha < 0,5, atëherë mesazhi = "Mëngjes"
 Nëse koha >= 0,5 Dhe koha < 0,75, atëherë Msg = "Pasdite"
 Nëse koha >= 0,75, atëherë Msg = "Mbrëmje"
 MsgBox "Mirë" & Msg
Fundi Nën

Një kthesë e re u shtua me përdorimin e një ndryshoreje. Variabli Msg merr një vlerë të ndryshme teksti, në varësi të kohës së ditës. Deklarata MsgBox shfaq përshëndetjen: Mirëmëngjes, Mirëmëngjes ose Mirëmbrëma.

Rutina e mëposhtme kryen të njëjtin veprim, por përdor një strukturë If-Then-End If:

Nën GreetMe6()
  Dim Msg As String
  Nëse Koha < 0.5 Atëherë
    Msg = "Mëngjes"
  Fundi Nëse
  Nëse Koha >= 0,5 Dhe Koha < 0,75 Atëherë
    Msg = "Pasdite"
  Fundi Nëse
  Nëse Koha >= 0.75 Atëherë
    Msg = "Mbrëmje"
  Fundi Nëse
  MsgBox "Mirë" & Msg
Fundi Nën

Duke përdorur ElseIf

Në shembujt e mëparshëm, çdo deklaratë në rutinë është ekzekutuar. Një strukturë pak më efikase do të dilte nga rutina sapo të konstatohet se një kusht është i vërtetë. Në mëngjes, për shembull, procedura duhet të shfaqë mesazhin Good Morning dhe më pas të dalë - pa vlerësuar kushtet e tjera të tepërta.

Me një rutinë të vogël si kjo, nuk duhet të shqetësoheni për shpejtësinë e ekzekutimit. Por për aplikacione më të mëdha në të cilat shpejtësia është kritike, duhet të dini për një sintaksë tjetër për strukturën If-Then.

Ja se si mund ta rishkruani rutinën GreetMe duke përdorur këtë sintaksë:

Nën GreetMe7()
 Dim Msg As String
 Nëse Koha < 0.5 Atëherë
   Msg = "Mëngjes"
 ElseIf Time >= 0,5 Dhe Koha < 0,75 Pastaj
   Msg = "Pasdite"
 Përndryshe
   Msg = "Mbrëmje"
 Fundi Nëse
 MsgBox "Mirë" & Msg
Fundi Nën

Kur një kusht është i vërtetë, VBA ekzekuton deklaratat e kushtëzuara dhe struktura If përfundon. Me fjalë të tjera, kjo procedurë është pak më efikase se sa shembujt e mëparshëm. Kombinimi është se kodi është më i vështirë për t'u kuptuar.

Një shembull tjetër Nëse-Atëherë

Ja një shembull tjetër që përdor formën e thjeshtë të strukturës If-Then. Kjo procedurë e kërkon përdoruesin për një sasi dhe më pas shfaq zbritjen e duhur, bazuar në sasinë që përdoruesi fut:

Nën ShowDiscount()
  Sasia e zbehtë për aq kohë sa
  Zbritje e zbehtë si e dyfishtë
  Sasia = InputBox ("Fut sasinë:")
  Nëse Sasia > 0, atëherë Zbritja = 0.1
  Nëse Sasia >= 25 Atëherë Zbritja = 0,15
  Nëse Sasia >= 50 Atëherë Zbritja = 0.2
  Nëse Sasia >= 75 Atëherë Zbritja = 0,25
  MsgBox "Zbritje: " & Zbritje
Fundi Nën

Vini re se çdo deklaratë If-Then në këtë rutinë ekzekutohet dhe vlera për Discount mund të ndryshojë ndërsa deklaratat ekzekutohen. Megjithatë, rutina në fund të fundit shfaq vlerën e saktë për Discount sepse deklaratat Nëse-Atëherë janë në rend të vlerave të Zbritjes në rritje.

Procedura e mëposhtme kryen të njëjtat detyra duke përdorur sintaksën alternative ElseIf. Në këtë rast, rutina përfundon menjëherë pas ekzekutimit të deklaratave për një kusht të vërtetë:

Nën ShowDiscount2()
 Sasia e zbehtë për aq kohë sa
 Zbritje e zbehtë si e dyfishtë
 Sasia = InputBox ("Fut sasinë:")
 Nëse Sasia > 0 Dhe Sasia < 25 Atëherë
  Zbritje = 0.1
 ElseIf Sasia >= 25 Dhe Sasia < 50 Pastaj
  Zbritje = 0.15
 ElseIf Sasia >= 50 Dhe Sasia < 75 Pastaj
  Zbritje = 0.2
 ElseNëse Sasia >= 75 Pastaj
  Zbritje = 0.25
 Fundi Nëse
 MsgBox "Zbritje: " & Zbritje
Fundi Nën

Këto struktura të shumta If-Then janë mjaft të rënda. Ju mund të dëshironi të përdorni strukturën If-Then vetëm për vendime të thjeshta binare.


Fshini vizatimet e stilolapsit dhe theksuesit në rrëshqitjet tuaja në PowerPoint

Fshini vizatimet e stilolapsit dhe theksuesit në rrëshqitjet tuaja në PowerPoint

Nëse keni përdorur stilolapsin ose theksuesin për të vizatuar në rrëshqitjet tuaja në PowerPoint gjatë një prezantimi, mund t'i ruani vizatimet për prezantimin tjetër ose t'i fshini ato, kështu që herën tjetër që ta shfaqni, do të filloni me sllajde të pastra të PowerPoint. Ndiqni këto udhëzime për të fshirë vizatimet me stilolaps dhe theksues: Fshirja e rreshtave një në […]

Përmbajtja e Bibliotekës Style në SharePoint 2010

Përmbajtja e Bibliotekës Style në SharePoint 2010

Biblioteka e stileve përmban skedarë CSS, skedarë të gjuhës së fletë stili të zgjeruar (XSL) dhe imazhe të përdorura nga faqet kryesore të paracaktuara, paraqitjet e faqeve dhe kontrollet në SharePoint 2010. Për të gjetur skedarët CSS në bibliotekën e stileve të një siti botimi: Zgjidhni Veprimet e sitit→ Shiko E gjithë përmbajtja e faqes. Shfaqet përmbajtja e faqes. Biblioteka Style ndodhet në […]

Formatoni numrat në mijëra e miliona në raportet Excel

Formatoni numrat në mijëra e miliona në raportet Excel

Mos e mbingarkoni audiencën tuaj me numra gjigantë. Në Microsoft Excel, ju mund të përmirësoni lexueshmërinë e paneleve dhe raporteve tuaja duke formatuar numrat tuaj që të shfaqen në mijëra ose miliona.

Si të ndani dhe ndiqni faqet e SharePoint

Si të ndani dhe ndiqni faqet e SharePoint

Mësoni se si të përdorni mjetet e rrjeteve sociale të SharePoints që lejojnë individët dhe grupet të komunikojnë, bashkëpunojnë, ndajnë dhe lidhen.

Si të konvertoni datat në formatet Julian në Excel

Si të konvertoni datat në formatet Julian në Excel

Datat Juliane përdoren shpesh në mjediset e prodhimit si një vulë kohore dhe referencë e shpejtë për një numër grupi. Ky lloj kodimi i datës i lejon shitësit me pakicë, konsumatorët dhe agjentët e shërbimit të identifikojnë se kur është prodhuar një produkt, dhe kështu moshën e produktit. Hurmat Juliane përdoren gjithashtu në programim, ushtri dhe astronomi. Të ndryshme […]

Si të krijoni një aplikacion uebi Access

Si të krijoni një aplikacion uebi Access

Mund të krijoni një aplikacion ueb në Access 2016. Pra, çfarë është një aplikacion ueb gjithsesi? Epo, ueb do të thotë se është në internet dhe aplikacioni është thjesht stenografi për "aplikacion". Një aplikacion ueb i personalizuar është një aplikacion i bazës së të dhënave në internet që aksesohet nga cloud duke përdorur një shfletues. Ju ndërtoni dhe mirëmbani aplikacionin në internet në versionin e desktopit […]

Shiriti i nisjes së shpejtë në SharePoint 2010

Shiriti i nisjes së shpejtë në SharePoint 2010

Shumica e faqeve në SharePoint 2010 shfaqin një listë të lidhjeve të navigimit në shiritin e nisjes së shpejtë përgjatë anës së majtë të faqes. Shiriti i Nisjes së Shpejtë shfaq lidhjet me përmbajtjen e veçuar të sajtit si listat, bibliotekat, sajtet dhe faqet e botimit. Shiriti i Nisjes së Shpejtë përfshin dy lidhje shumë të rëndësishme: Lidhja e gjithë përmbajtjes së sitit: […]

Çfarë nënkuptojnë mesazhet e gabimit të zgjidhjes në Excel?

Çfarë nënkuptojnë mesazhet e gabimit të zgjidhjes në Excel?

Për probleme të thjeshta, Solver në Excel zakonisht gjen shpejt vlerat optimale të variablave Zgjidhës për funksionin objektiv. Por, në disa raste, Solver ka vështirësi në gjetjen e vlerave të ndryshores Solver që optimizojnë funksionin objektiv. Në këto raste, Solver zakonisht shfaq një mesazh ose një mesazh gabimi që përshkruan ose diskuton problemet që […]

Si të hiqni fushat dhe artikujt e llogaritur nga një tabelë kryesore Excel

Si të hiqni fushat dhe artikujt e llogaritur nga një tabelë kryesore Excel

Mund të hiqni lehtësisht fushat dhe artikujt e llogaritur nga një tabelë kryesore e Excel. Për të hequr një fushë të llogaritur, klikoni një qelizë në tabelën kryesore. Pastaj klikoni komandën Fields, Items & Sets të skedës Analize dhe zgjidhni Fushën e llogaritur nga nënmenyja që shfaqet. Kur Excel shfaq kutinë e dialogut Fut fushën e llogaritur, zgjidhni […]

Si të etiketoni në SharePoint

Si të etiketoni në SharePoint

Etiketat janë fjalë kyçe që ju i caktoni përmbajtjes. Etiketimi i faqeve për t'i ndarë me të tjerët është faqeshënues social dhe është shumë i popullarizuar në ueb dhe është i lehtë në SharePoint. Nëse keni përdorur ndonjëherë një sajt si Delicious, tashmë e dini se si funksionon shënimi social. Ndërsa më shumë njerëz caktojnë të njëjtat etiketa, etiketat bëhen një mënyrë […]