VBA IN funkcija | Kako uporabljati IN logičnega operaterja v VBA?

Excel VBA IN funkcija

AND je logična funkcija in tudi logični operater, kar pomeni, da če so izpolnjeni vsi pogoji, predvideni v tej funkciji, bomo samo resnični rezultat, če pa kateri koli od pogojev ne uspe, se izhod vrne v false, vgrajen in ukaz v VBA za uporabo.

Upam, da ste prebrali naš članek o "VBA ALI" in "VBA ČE ALI". Ta funkcija je ravno nasprotna od funkcije OR. V funkciji OR smo potrebovali kogar koli od podanih logičnih pogojev, da smo dobili rezultat kot TRUE. Toda pri funkciji AND je ravno obratno. Da bi dobili rezultat TRUE, morajo biti izpolnjeni vsi priloženi logični testi v Excelu.

Ok, poglejte sintakso funkcije AND v Excelu.

[Logični test] IN [Logični test] IN [Logični test]

Zgoraj imam dve preizkusni oceni od 600.

V stolpcu z rezultati moram rezultat dobiti TRUE, če je rezultat obeh testov večji od 250.

Poglejte spodnjo sliko.

Ko uporabimo logično funkcijo IN smo dobili rezultate. V celicah C4 in C5 smo dobili rezultat TRUE, ker so rezultati Test 1 in Test 2 večji ali enaki 250.

Poglejte celico C6, tu imamo FALSE, čeprav je rezultat testa 2 enak 250. To je zato, ker je rezultat testa 1 le 179.

Primeri uporabe VBA in funkcije

To predlogo VBA IN Excel lahko prenesete tukaj - Predloga VBA IN Excel

Primer # 1

Tu bomo na primer preizkusili številke, ali je 25> = 20 in 30 <= 31.

1. korak: Spremenljivko prijavite kot niz.

Koda:

 Sub AND_Primer1 () Dim K Kot niz na koncu Sub 

2. korak: Za spremenljivko "k" bomo vrednost dodelili z uporabo funkcije AND.

Koda:

 Sub AND_Primer1 () Dim K Kot niz K = End Sub 

3. korak: podajte prvi pogoj kot 25> = 20.

Koda:

 Sub AND_Primer1 () Dim K Kot niz K = 25> = 20 Končni Sub 

4. korak: Zdaj odprite funkcijo AND in podajte drugi logični test, tj. 30 <= 29.

Koda:

 Sub AND_Primer1 () Dim K Kot niz K = 25> = 20 In 30 <= 29 Končni Sub 

5. korak: Zdaj prikaži rezultat spremenljivke "k" v polju za sporočila v VBA.

Koda:

 Sub AND_Primer1 () Dim K As String K = 25> = 20 In 30 <= 29 MsgBox K End Sub 

Zaženite makro, da vidite, kakšen je rezultat.

Rezultat smo dobili kot FALSE, ker smo od uporabljenih dveh pogojev prvi pogoj 25> = 20 ta pogoj izpolnili, zato je rezultat TRUE in drugi pogoj 30 <= 29 to ni izpolnjen rezultat je FALSE. Če želite rezultat dobiti TRUE, morata biti izpolnjena oba pogoja.

2. primer

Zdaj bom logični test spremenil v "100> 95 IN 100 <200"

Koda:

 Sub AND_Primer2 () Dim k As String k = 100> 95 In 100 <200 MsgBox k End Sub 

Zaženite kodo, da vidite rezultat.

Tu smo kot rezultat dobili TRUE, ker

1. logični preizkus: 100> 95 = TRUE

2. logični test: 100 <200 = TRUE

Ker smo za oba logična testa dobili TRUE rezultate, je naš končni rezultat TRUE.

3. primer

Zdaj bomo videli podatke z delovnega lista. Uporabite podatke, ki smo jih uporabili za prikaz primera funkcije excel AND.

Tu je pogoj test 1 rezultat> = 250 IN test 2 rezultat> = 250 .

Ker imamo več celic podatkov, moramo uporabiti zanke, da se izognemo pisanju nepotrebnih in dolgotrajnih vrstic kod. Za vas sem napisal spodnjo kodo, formula in logično je isto, samo da sem uporabil »VBA za naslednjo zanko«.

Koda:

 Sub AND_Primer3 () Dim k Kot celo število Za k = 2 do 6 celic (k, 3) .Vrednost = Celice (k, 1)> = 250 In Celice (k, 2)> = 250 Naslednji k Konec Sub 

Rezultat bo tako enak kot funkcija našega delovnega lista, vendar ne bomo dobili nobenih formul, temveč le rezultate.

Tako lahko uporabimo logično funkcijo AND za testiranje več pogojev, ki bi morali biti TRUE, da bi prišli do želenih rezultatov.

To deluje popolnoma nasprotno od funkcije OR, pri čemer OR zahteva, da je kateri koli od dobavljenih pogojev TRUE, da bi prišel do rezultatov, AND pa zahteva 100% rezultat v logičnem preskusu, da prispe rezultate.