Hjem Social Media Hvordan man bruger If-Then i Excel 2016 VBA-dummies

Hvordan man bruger If-Then i Excel 2016 VBA-dummies

Indholdsfortegnelse:

Video: Excel - Hvordan aktivere problemløseren 2025

Video: Excel - Hvordan aktivere problemløseren 2025
Anonim

Hvis-da er VBAs vigtigste kontrolstruktur. Du vil sandsynligvis bruge denne kommando dagligt. Brug If-Then-strukturen, når du vil udføre et eller flere udsagn betinget. Den valgfrie Else-klausul, hvis inkluderet, giver dig mulighed for at udføre et eller flere udsagn, hvis tilstanden du tester er ikke sand. Her er en simpel CheckUser-procedure, genkodet til at bruge If-Then-Else-strukturen:

Sub CheckUser2 () UserName = InputBox ("Indtast dit navn:") Hvis UserName = "Satya Nadella" Så MsgBox ("Velkommen Satya …") '… [Mere kode her] … Else MsgBox "Undskyld. Kun Satya Nadella kan køre dette. "End If End Sub

Hvis-Så eksempler

Følgende rutine demonstrerer If-Then-strukturen uden valgfri Else-klausul:

Sub GreetMe () Hvis Time <0. 5 derefter MsgBox" Good Morning "End Sub

GreetMe-proceduren bruger VBAs Time-funktion til at få systemtiden. Hvis den aktuelle tid er mindre end. 5 viser rutinen en venlig hilsen. Hvis tiden er større end eller lig med. 5, rutinen slutter, og der sker ikke noget.

For at vise en anden hilsen, hvis Tiden er større end eller lig med. 5, kan du tilføje en anden If-Then-sætning efter den første:

Sub GreetMe2 () Hvis Time = 0. 5 Så MsgBox "Good Afternoon" End Sub

Bemærk at> = (større end eller lig med) bruges til den anden If-Then-sætning. Dette sikrer, at hele dagen er dækket. Havde> (større end) været brugt, ville der ikke vises nogen besked, hvis denne procedure blev udført kl. 12.00. Det er temmelig usandsynligt, men med et vigtigt program som dette, vil du ikke tage nogen chancer.

Et eksempel på eksempelvis

En anden tilgang til det foregående problem anvender Else-klausulen. Her er den samme rutine omkodet til at bruge If-Then-Else-strukturen:

Sub GreetMe3 () Hvis Time <0. 5 derefter MsgBox "Good Morning" Else _ MsgBox "Good Afternoon" End Sub

Bemærk at linjen fortsættelse karakter (understregning) anvendes i det foregående eksempel. If-Then-Else erklæringen er faktisk en enkelt erklæring. VBA giver en lidt anden måde at kode If-Then-Else konstruktioner, der bruger en End If-sætning. Derfor kan GreetMe-proceduren omskrives som

Sub GreetMe4 () Hvis Time <0. 5 derefter MsgBox "Good Morning" Else MsgBox "Good Afternoon" End Hvis End Sub

Faktisk kan du indsætte et hvilket som helst antal udsagn under Hvis en del og et hvilket som helst antal erklæringer under Else-delen. Denne syntaks er lettere at læse og gør udsagnene kortere.Hvad skal du gøre hvis du skal udvide GreetMe-rutinen til at håndtere tre betingelser: morgen, eftermiddag og aften? Du har to muligheder: Brug tre If-Then-sætninger eller brug en

indlejret If-Then-Else-struktur. Nesting betyder at placere en If-Then-Else-struktur inden for en anden If-Then-Else-struktur. Den første tilgang, der bruger tre If-Then-sætninger, er enklere: Sub GreetMe5 () Dim Msg As String Hvis Time = 0. 5 Og Time = 0. 75 Then Msg = "Evening" MsgBox "Good" & Msg End Sub

Et nyt twist blev tilføjet med brug af en variabel. Msg-variablen får en anden tekstværdi afhængigt af tidspunktet på dagen. MsgBox-sætningen viser hilsen: God morgen, god eftermiddag eller god aften.

Følgende rutine udfører samme handling, men bruger en If-Then-End Hvis struktur:

Sub GreetMe6 () Dim Msg Som String Hvis Time = 0. 5 Og Time = 0. 75 Then Msg = "Evening" Afslut, hvis MsgBox "God" & Msg End Sub

Brug af ElseIf

I de foregående eksempler udføres hver sætning i rutinen. En lidt mere effektiv struktur ville forlade rutinen, så snart en tilstand er fundet sand. Om morgenen bør proceduren f.eks. Vise godmorgen besked og derefter afslutte - uden at vurdere de øvrige overflødige forhold.

Med en lille rutine som denne, behøver du ikke bekymre dig om eksekveringshastigheden. Men for større applikationer, hvor hastigheden er kritisk, bør du vide om en anden syntaks for If-Then-strukturen.

Her kan du omskrive GreetMe-rutinen ved at bruge denne syntaks:

Sub GreetMe7 () Dim Msg As String Hvis Time = 0. 5 Og Time <0. 75 Then Msg = "Afternoon" Else Msg = "Evening "Afslut Hvis MsgBox" God "& Msg Slut Sub

Når en betingelse er sand, udfører VBA de betingede udsagn, og If-strukturen slutter. Med andre ord er denne procedure lidt mere effektiv end de tidligere eksempler. Afvejningen er, at koden er vanskeligere at forstå.

Et andet Hvis-da eksempel

Her er et andet eksempel, der bruger den enkle form for If-Then-strukturen. Denne procedure beder brugeren om en mængde og viser derefter den passende rabat baseret på den mængde brugeren indtaster:

Sub ShowDiscount () Dim Mængde Så Lang Dim Rabat Som Dobbelt Mængde = InputBox ("Indtast Mængde:") Hvis Mængde > 0 Så Rabat = 0. 1 Hvis Mængde> = 25 Så Rabat = 0. 15 Hvis Mængde> = 50 Så Rabat = 0. 2 Hvis Mængde> = 75 Så Rabat = 0. 25 MsgBox "Rabat:" & Rabat Slut Del

Bemærk, at hver If-Then-sætning i denne rutine udføres, og værdien for Rabat kan ændres, når udsagnene udføres. Rutinen viser dog i sidste ende den korrekte værdi for Rabat, fordi If-Then-sætningerne er i rækkefølge af stigende rabatværdier.

Følgende procedure udfører de samme opgaver ved at bruge den alternative ElseIf-syntaks. I dette tilfælde slutter rutinen umiddelbart efter at erklæringerne er udført for en sand tilstand:

Sub ShowDiscount2 () Dim Antal Som Lang Dim Rabat Som Dobbelt Mængde = InputBox ("Indtast Mængde:") Hvis Mængde> 0 Og Mængde <25 derefter rabat = 0.1 ElseIf Antal> = 25 Og Mængde <50 derefter Rabat = 0. 15 ElseIf Antal> = 50 Og Mængde <75 Så Rabat = 0. 2 ElseIf Antal> = 75 Så Rabat = 0. 25 Afslut Hvis MsgBox "Rabat:" & Discount End Sub

Disse flere If-Then strukturer er ret besværlige. Du kan muligvis bruge If-Then-strukturen kun til enkle binære beslutninger.
Hvordan man bruger If-Then i Excel 2016 VBA-dummies

Valg af editor

Hvordan man redigerer og annullerer betalingschecks i QuickBooks 2012 - dummies

Hvordan man redigerer og annullerer betalingschecks i QuickBooks 2012 - dummies

Pas på, når du vil ændre lønningslisten kontrollere oplysninger ved at redigere eller ugyldige lønsedler i QuickBooks 2012. Lønningskontroller er lidt sværere end regelmæssige checks, fordi oplysningerne fra lønsedekontrollerne påvirker en masse forskellige lønttællere. For eksempel styrker lønningskontrollerne en persons bruttoløn for året. Lønkontroller ...

Hvordan man sender e-mail-fakturaer i QuickBooks 2012 - dummies

Hvordan man sender e-mail-fakturaer i QuickBooks 2012 - dummies

QuickBooks 2012. For at gøre dette, skal du klikke på Send-knappen og vælge kommandoen Mailfaktura i menuen, som QuickBooks viser. (Send-knappen vises øverst på skærmbilledet Opret faktura.) Når QuickBooks viser dialogboksen Send faktura, angiver du hvilken e-mail-konto du vil bruge ...

Sådan håndteres QuickBooks 2012 Pre-Setup Jitters - dummies

Sådan håndteres QuickBooks 2012 Pre-Setup Jitters - dummies

, Efter du har installeret QuickBooks 2012, kører du en guiden på skærmen for at oprette QuickBooks til din virksomheds regnskab. Denne skærmguiden er i orden kaldet QuickBooks Setup. Forberedelse til QuickBooks 2012 opsætning Når du kører QuickBooks Setup, giver du ganske lidt information til QuickBooks. Som et praktisk spørgsmål, vil opsætningen og efteropsætningen ...

Valg af editor

Ser på jødedommen som en daglig praksis - dummier

Ser på jødedommen som en daglig praksis - dummier

Jødedom, en religion der fokuserer langt mere på gerninger end på overbevisninger er også en øvelse. Fordi jødedommen er et sæt praksis, kaldes det en livsstil. Disse metoder, især når de er køretøjer, hvorigennem en person forbinder mere bevidst med Gud, kaldes mitzvot (mitz VOTE; plural af mitzvah). Ordet ...

Seksualitet i jødedom - dummier

Seksualitet i jødedom - dummier

Jødedom fremmer undersøgelse, bøn og praktiserer mitzvot for at få et tættere "ret" forhold til Universel. Men der er en anden metode: sex. Judaism understreger, at sex er en dybt hellig handling, der skal udføres regelmæssigt, og insisterer på, at det er behageligt for begge medlemmer af et ægtepar. Judaism beskriver en række strenge regler ...

Grundlæggende adfærdsprincipper fra Torah - dummies

Grundlæggende adfærdsprincipper fra Torah - dummies

Toraen er en guidebog for jødisk levevis, hvilket kræver en levetid for studiet at lære og forfine dine handlinger og personlige kvaliteter. Mens det indeholder hundredvis af alle slags bud, er der nogle grundlæggende principper, der styrer personlig adfærd. Disse seks er de vigtigste ordninger fra Torahen for en sund, ...

Valg af editor

Sådan laver du en Scratch Robot Interactive - dummies

Sådan laver du en Scratch Robot Interactive - dummies

Halv sjov med tegning og maling i Scratch bruger kode for at gøre dem interaktive. Gå til fanen Scripts på din robot og tilføj følgende kode: Du behøver ikke at klikke på det grønne flag på scenen for at teste denne kode. bare klik på piletasterne på dit tastatur. Du ...

Sådan gør du rør i dit Flappy Bat Game - dummies

Sådan gør du rør i dit Flappy Bat Game - dummies

I det originale Flappy Bird spil , rørene bevæger sig fra højre til venstre, mens afspilleren bevæger sig op og ned. For yderligere at skelne dit Flappy Bat spil fra den anden Flappy, vil du tilføje kode, der bevæger røret fra venstre mod højre. På scenen skal du klikke og trække røret helt til ...

Sådan ændres Scratch Characters - dummies

Sådan ændres Scratch Characters - dummies

Du kan bruge bitmap-malingsværktøjerne i Scratch til at ændre din karakter. Bitmap-grafik er lavet af små firkanter kaldet pixels. Vær opmærksom på, at hvis du forstørrer din bitmap sprites for meget, bliver de pixeleret eller slags sløret. Selvom du vil zoome ind på Paint Editor-lærredet til at male detaljer, ...