Excel VBA andet hvis

VBA Else If giver dig mulighed for at analysere en tilstand og udføre en handling i overensstemmelse hermed. IF-tilstand kontrollerer, om den leverede betingelse er SAND eller FALSE, hvis betingelsen er SAND, vil den returnere den tildelte værdi af værdi, hvis sand, og returnere værdi, hvis falsk, hvis resultatet er FALSE.

Logikken for IF-tilstand i almindelig excelformel og VBA-formel er den samme. I denne artikel vil jeg dække komplet VBA IF-tilstand.

Syntaks for VBA Hvis erklæring

Se først syntaksen til IF-erklæringen i VBA.

Dette ligner meget vores regnearkfunktion IF. Den eneste forskel her er, at vi er nødt til at sætte ordet DET for at gå videre i funktionen, også den anden del af IF-betingelsen er valgfri i modsætning til i vores normale IF-tilstand, og vi er nødt til at nævne slutningen af ​​funktionen som Slut If .

Der vil faktisk være endnu et argument, hvis betingelserne for at teste er mere end en betingelse, og den del kaldes som ELSE IF-erklæring. Dette er som vores indlejrede IF-tilstand i vores regnearkberegninger. ELSE IF kommer til billedværdi, hvis betingelsen er FALSE, så er vi nødt til at teste mere tilstand med ELSE IF-tilstand.

I denne artikel vil vi se mere om ELSE IF-tilstand i den praktiske verden.

Hvordan bruges VBA andet hvis erklæring?

Lad os forstå, hvordan du bruger VBA Else If-erklæring med nogle eksempler.

Du kan downloade denne VBA Else Hvis Excel-skabelon her - VBA Else Hvis Excel-skabelon

Enkel, hvis erklæring - eksempel # 1

Nu er teoretisk forklaring nok, selvom du ikke forstod noget intet at bekymre dig. I det praktiske eksempel fanger du logikken.

Antag, at du har en værdi i cellen A2, og du vil kontrollere, om antallet er større end 100 eller ikke. Hvis værdien er større end 100, har vi brug for værdien i celle B2 som "Mere end 100". Nedenstående kode udfører den krævede opgave.

Kode:

 Sub IF_Example1 () If Range ("A2"). Value> 100 Then Range ("B2"). Value = "More than 100" End If End Sub 

Kør derefter denne kode ved hjælp af F5-tasten eller manuelt som vist på skærmbilledet. Så kan vi se resultatet i celle B2.

Hvis du ændrer værdien i celle A2 til 99 og kører koden. Koden returnerer intet, fordi værdien er mindre end 100, og vi har ikke leveret noget resultat, hvis testen er FALSE, dette vil vi se i det næste eksempel.

Hvis med anden erklæring - eksempel # 2

Vi har set, hvordan enkelt IF med SAND tilstand fungerer. Nu vil vi se, hvordan man arbejder, hvis den leverede tilstand er FALSE.

I den aktuelle kode efter den sande værdi leveres i den næste linjetype ord andet.

Kode:

 Sub IF_Example2 () If Range ("A2"). Value> 100 Then Range ("B2"). Value = "More than 100" Else End If End Sub 

Og skriv den næste linje koden for falsk værdi.

Kode:

 Sub IF_Example2 () If Range ("A2"). Value> 100 Then Range ("B2"). Value = "More than 100" Else Range ("B2"). Value = "Mindre end 100" End If End Sub 

Kør derefter denne kode ved hjælp af F5-tasten eller manuelt som vist på skærmbilledet. Hvis værdien er større end 100, ville resultatet være "Mere end 100" i celle B2.

Hvis værdien er mindre end 100, ville resultatet være "Mindre end 100".

Indlejret hvis erklæring med andet hvis - eksempel # 3

Når vi ønsker at teste mere end en betingelse, er vi nødt til at bruge flere IF-udsagn i IF-tilstanden. Men i VBA er vi nødt til at bruge ordet ELSE IF til at teste mere end en tilstand.

For eksempel, i celle A2, hvis værdien er mere end 200, har vi brug for resultatet som "Mere end 200" i celle B1.

Hvis værdien er mere end 100, har vi brug for resultatet som "Mere end 100" i celle B2.

Hvis værdien er mindre end 100, har vi brug for resultatet som "Mindre end 100" i celle B2.

Trin 1: Når den Sande værdi er passeret, indtast ordet ELSE IF i den næste linje.

Kode:

 Under IF_Example3 () Hvis Range ("A2"). Værdi> 200 Derefter Range ("B2"). Value = "More than 200" ElseIf Range ("A2"). Value> 100 Then Range ("B2"). Value = "Mere end 100" Slut, hvis slut sub 

Trin 2: Da vi allerede har testet to argumenter, har vi kun én betingelse. Nu i den næste linje leverer det endelige resultat af testen med ELSE-erklæring.

Kode:

 Under IF_Example3 () Hvis Range ("A2"). Værdi> 200 Derefter Range ("B2"). Value = "More than 200" ElseIf Range ("A2"). Value> 100 Then Range ("B2"). Value = "Mere end 100" Else Range ("B2"). Værdi = "Mindre end 100" Ende, hvis slut sub 

Trin 3: Kør derefter denne kode ved hjælp af F5-nøglen eller manuelt som vist på skærmbilledet for at se resultater.

Resultat 1:

Resultat 2:

Resultat 3:

Indlejret hvis med sløjfe - eksempel # 4

Dette er det avancerede eksempel på Nested IF with Loop. Antag, at du har en salgstabel med 12 måneders data.

I statuskolonnen har vi brug for resultatet som følger.

  • Hvis salgsværdien er mere end 7000, skal resultatet være "Fremragende"
  • Hvis salgsværdien er mere end 6500, skal resultatet være "Meget godt"
  • Hvis salgsværdien er mere end 6000, skal resultatet være "Godt"
  • Hvis salgsværdien er mere end 4000, skal resultatet være "Ikke dårligt"
  • Hvis alle resultater er FALSE, skal resultatet være "Dårligt"

For at udføre denne test har vi brug for nedenstående kode, som er en kombination af IF med ELSE IF og LOOP.

Kode:

 Sub IF_Example4 () Dim i som heltal i = 2 For i = 2 til 13 Hvis celler (i, 2) .Value> = 7000 Derefter celler (i, 3) .Value = "Fremragende" ElseIf celler (i, 2). Værdi> = 6500 Derefter celler (i, 3). Værdi = "meget god", hvis celler (i, 2). Værdi> = 6000 derefter celler (i, 3). Værdi = "gode", hvis celler (i, 2) .Value> = 4000 Derefter Celler (i, 3) .Value = "Not Bad" Else Cells (i, 3) .Value = "Bad" End Hvis Next i End Sub 

Kør derefter denne kode ved hjælp af F5-tasten eller manuelt som vist på skærmbilledet for at se resultater.

Ting at huske

  • ELSE IF-udsagn kræver resultatkoden i den samme linje ikke på den næste linje og kræver også, at DET-udsagn går til den næste erklæring.
  • Hvis udsagnet END IF ikke er lukket, får vi nedenstående fejl.

  • Operatøren er intet men ikke lig med en IF-erklæring.
  • Som regnearkfunktion kan vi også bruge AND & OR-sætning i IF-sætningen.

Anbefalede artikler

Dette har været en guide til VBA Else If-erklæring. Her diskuterede vi VBA Else If og hvordan man bruger Excel VBA Else If sammen med nogle praktiske eksempler og downloadbar excel-skabelon. Du kan også gennemgå vores andre foreslåede artikler -

  1. Hvordan bruges VBA Select Case?
  2. Hvordan bruges VBA Find-funktion?
  3. Vejledning til VBA TRIM-funktion
  4. Vejledning og eksempler på VBA-sløjfer

Kategori: