Excel VBA annars om

VBA Else If låter dig analysera ett tillstånd och utföra en åtgärd i enlighet därmed. IF-tillståndet kontrollerar om det levererade villkoret är SANT eller FALSE, om villkoret är SANT kommer det att tilldela det tilldelade värdet för Value om True och return Value IF False om resultatet är FALSE.

Logiken för IF-tillstånd i vanlig excel-formel och VBA-formel är densamma. I den här artikeln kommer jag att täcka komplett VBA IF-villkor.

Syntax av VBA If-uttalande

Se först syntaxen för IF-uttalandet i VBA.

Detta liknar vår kalkylbladsfunktion IF. Den enda skillnaden här är att vi måste sätta ordet DAN för att gå vidare i funktionen, även den andra delen av IF-villkoret är valfri till skillnad från i vårt normala IF-tillstånd och vi måste nämna slutet på funktionen som slut om .

Egentligen kommer det att finnas ytterligare ett argument om villkoren för att testa är mer än ett villkor och den delen kallas som ELSE IF-uttalande. Detta är som vårt kapslade IF-tillstånd i våra kalkylblad. ELSE IF kommer till bildvärde om villkoret är FALSE, då måste vi testa mer tillstånd med ELSE IF-tillstånd.

I den här artikeln kommer vi att se mer om ELSE IF-tillstånd i den praktiska världen.

Hur använder man VBA på annat sätt om uttalande?

Låt oss förstå hur man använder VBA Else If-uttalande med några exempel.

Du kan ladda ner denna VBA Else If Excel Mall här - VBA Else If Excel Mall

Enkel om uttalande - Exempel # 1

Nu räcker teoretisk förklaring, även om du inte förstod någonting att oroa dig för. I det praktiska exemplet kommer du att fånga logiken.

Antag att du har ett värde i cellen A2 och att du vill kontrollera om antalet är större än 100 eller inte. Om värdet är större än 100 behöver vi värdet i cell B2 som "Mer än 100". Nedanstående kod kommer att utföra den nödvändiga uppgiften.

Koda:

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

Kör sedan denna kod med F5-tangenten eller manuellt som visas på skärmdumpen. Då kan vi se resultatet i cell B2.

Om du ändrar värdet i cell A2 till 99 och kör koden. Koden returnerar ingenting eftersom värdet är mindre än 100 och vi har inte levererat något resultat om testet är FALSE, detta kommer vi att se i nästa exempel.

Om med annat uttalande - Exempel # 2

Vi har sett hur singel IF med TRUE-tillstånd fungerar. Nu ska vi se hur man arbetar om det levererade tillståndet är FALSE.

I den aktuella koden efter att True-värdet tillhandahålls i nästa radtyp ord annat.

Koda:

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

Och i nästa rad skriver du koden för falskt värde.

Koda:

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

Kör sedan denna kod med F5-tangenten eller manuellt som visas på skärmdumpen. Om värdet är större än 100 skulle resultatet vara "Mer än 100" i cell B2.

Om värdet är mindre än 100 skulle resultatet vara "Mindre än 100".

Häckt om uttalande med annat om - exempel # 3

När vi vill testa mer än ett villkor måste vi använda fler IF-uttalanden i IF-tillståndet. Men i VBA måste vi använda ordet ELSE IF för att testa mer än ett tillstånd.

Till exempel i cell A2 om värdet är mer än 200 behöver vi resultatet som "Mer än 200" i cell B1.

Om värdet är mer än 100 behöver vi resultatet som "Mer än 100" i cell B2.

Om värdet är mindre än 100 behöver vi resultatet som "Mindre än 100" i cell B2.

Steg 1: När det Sanna värdet har passerat anger du ordet ELSE IF i nästa rad.

Koda:

 Sub IF_Example3 () If Range ("A2"). Value> 200 Then Range ("B2"). Value = "More than 200" ElseIf Range ("A2"). Value> 100 Then Range ("B2"). Value = "Mer än 100" End If End Sub 

Steg 2: Eftersom vi redan har testat två argument, har vi bara ett villkor. Nu i nästa rad levererar det slutliga resultatet av testet med ELSE-uttalande.

Koda:

 Sub IF_Example3 () If Range ("A2"). Value> 200 Then Range ("B2"). Value = "More than 200" ElseIf Range ("A2"). Value> 100 Then Range ("B2"). Value = "Mer än 100" Annars Område ("B2"). Värde = "Mindre än 100" Slut Om Slut Sub 

Steg 3: Kör sedan denna kod med F5-tangenten eller manuellt som visas på skärmdumpen för att se resultat.

Resultat 1:

Resultat 2:

Resultat 3:

Nested If with Loop - Exempel # 4

Detta är det avancerade exemplet på Nested IF med Loop. Antag att du har en försäljningstabell med 12 månaders data.

I statuskolumnen behöver vi resultatet enligt följande.

  • Om försäljningsvärdet är mer än 7000 bör resultatet vara "Utmärkt"
  • Om försäljningsvärdet är mer än 6500 bör resultatet vara "Mycket bra"
  • Om försäljningsvärdet är mer än 6000 bör resultatet vara "Bra"
  • Om försäljningsvärdet är mer än 4000 bör resultatet vara "Inte dåligt"
  • Om alla resultat är FALSE bör resultatet vara "Dåligt"

För att kunna utföra detta test behöver vi koden nedan som är en kombination av IF med ELSE IF och LOOP.

Koda:

 Sub IF_Example4 () Dim i som heltal i = 2 För i = 2 till 13 Om celler (i, 2) .Värde> = 7000 Sedan är celler (i, 3) .Value = "Utmärkt" ElseIf celler (i, 2). Värde> = 6500 Sedan Celler (i, 3) .Värde = "Mycket bra" ElseIf celler (i, 2). Värde> = 6000 Sedan Celler (i, 3) .Värde = "Bra" ElseIf celler (i, 2) .Värde> = 4000 Sedan Celler (i, 3) .Value = "Inte dåligt" Annat celler (i, 3) .Value = "Dåligt" slut om Nästa i slutet Sub 

Kör sedan denna kod med F5-tangenten eller manuellt som visas på skärmdumpen för att se resultat.

Saker att komma ihåg

  • ELSE IF-uttalande kräver resultatkoden på samma rad inte i nästa rad och kräver också EN-uttalande för att gå till nästa uttalande.
  • Om uttalandet END IF inte är bifogat får vi nedanstående fel.

  • Operatören är inget annat än lika med ett IF-uttalande.
  • Liksom kalkylfunktion kan vi också använda AND & OR-uttalanden i IF-uttalandet.

Rekommenderade artiklar

Detta har varit en guide till VBA Else If-uttalande. Här diskuterade vi VBA Else If och hur man använder Excel VBA Else If tillsammans med några praktiska exempel och nedladdningsbar Excel-mall. Du kan också gå igenom våra andra föreslagna artiklar -

  1. Hur använder man VBA Select Case?
  2. Hur använder man VBA Find-funktion?
  3. Guide till VBA TRIM-funktion
  4. Guide och exempel på VBA-loopar

Kategori: