VBA OM INTE

OM INTE i VBA

Logiska funktioner är användbara för beräkningar som kräver flera villkor eller kriterier för att testa. I våra tidigare artiklar har vi sett "VBA IF", "VBA OR" och "VBA AND" villkor. I den här artikeln kommer vi att diskutera funktionen “VBA IF NOT”. Innan jag introducerar VBA IF NOT-funktionen, låt mig berätta om VBA NOT-funktionen först.

Vad är INTE funktion i VBA?

“NOT” är en av de logiska funktioner vi har med excel & VBA. Alla logiska funktioner kräver att logiska tester genomförs och returnerar SANT om det logiska testet är korrekt, om det logiska testet inte är korrekt kommer det att returnera FALSE som resultat.

Men “VBA NOT” är helt motsatt den andra logiska funktionen. Jag skulle säga att detta är den inversa funktionen hos logiska funktioner.

Funktionen "VBA NOT" returnerar "FALSE" om det logiska testet är korrekt och om det logiska testet inte är korrekt kommer det att returneras "TRUE". Titta nu på syntaxen för funktionen “VBA NOT”.

INTE (logiskt test)

Detta är väldigt enkelt, vi måste tillhandahålla det logiska testet. INTE-funktionen utvärderar testet och returnerar resultatet.

Exempel på INTE & IF-funktion i VBA?

Nedan följer exempel på hur man använder IF och NOT i Excel VBA.

Du kan ladda ner denna VBA OM INTE Excel-mall här - VBA OM INTE Excel-mall

Exempel nr 1

Ta en titt på koden nedan för ett exempel.

Koda:

 Sub NOT_Example () Dim k As String k = Not (100 = 100) MsgBox k End Sub 

I ovanstående kod har jag förklarat variabeln som sträng.

 Dim k As String 

Sedan för denna variabel har jag tilldelat funktionen INTE med det logiska testet som 100 = 100.

k = Inte (100 = 100)

Sedan har jag skrivit koden för att visa resultatet i VBA-meddelanderutan. MsgBox k

Nu ska jag köra koden och se resultatet.

Vi fick resultatet som ”FALSE”.

Titta nu tillbaka på det logiska testet. Vi har angett det logiska testet som 100 = 100 vilket i allmänhet är SANT eftersom vi hade INTE-funktionen fick vi resultatet som FALSE. Som jag sa, i början, ger det inversa resultat jämfört med andra logiska funktioner. Eftersom 100 är lika med 100 har det returnerat resultatet som FALSE.

Exempel 2

Titta nu på ytterligare ett exempel med olika nummer.

Koda:

 Sub NOT_Example () Dim k As String k = Not (85 = 148) MsgBox k End Sub 

Koden är samma enda jag har ändrat här är att jag har ändrat det logiska testet från 100 = 100 till 85 = 148.

Nu ska jag köra koden och se vad resultatet blir.

Den här gången fick vi resultatet som SANT. Undersök nu det logiska testet.

k = Inte (85 = 148)

Vi vet alla att 85 inte är lika med antalet 148. Eftersom det inte är lika har INTE funktionen returnerat resultatet som SANT.

INTE med IF-tillstånd:

I Excel eller VBA är alla logiska förhållanden inte kompletta utan kombinationen IF-villkor. Med IF i utmärkt skick kan vi göra mycket fler saker utöver standard SANT eller FALSKT. Till exempel, i ovanstående exempel fick vi standardresultat för FALSE & TRUE, istället för att vi kan ändra resultatet med våra egna ord.

Titta på koden nedan.

Koda:

 Sub NOT_Exempel2 () Dimnummer1 Som sträng Dimnummer2 Som strängnummer1 = 100 Nummer2 = 100 Om inte (Nummer1 = Nummer2) Då är MsgBox "Nummer 1 inte lika med nummer 2" Annars MsgBox "Nummer 1 är lika med nummer 2" Slut om Avsluta sub 

Jag har förklarat två variabler.

 Dim Number1 As String & Dim Number2 As String 

För dessa två variabler har jag tilldelat siffrorna 100 respektive 100.

Number1 = 100 & Number2 = 100

Sedan för att INTE fungera har jag bifogat OM-villkor för att ändra standard SANT eller FALSK. Om resultatet av INTE-funktionen är SANT så blir mitt resultat som följer.

MsgBox ”Nummer 1 är inte lika med nummer 2”

Om resultatet INTE är FALSKT är mitt resultat följande.

MsgBox "Nummer 1 är lika med nummer 2"

Nu ska jag köra koden och se vad som händer.

Vi fick resultatet som "Nummer 1 är lika med nummer 2", så funktionen INTE har returnerat FALSKT resultat till OM-tillstånd så om villkoret returnerade detta resultat.

Så här kan vi använda IF-villkor för att göra det omvända testet.