Sisukord
Selles artiklis näitan teile, kuidas saate kasutada Kui avaldus aadressil VBA Excelis lahtri väärtuse alusel.
Excel VBA: Kui avaldus põhineb lahtri väärtusel (kiire vaade)
Sub If_Statement_Based_On_a_Single_Cell() If Range("C3").Value>= 40 Then Range("D3").Value = "Passed" Else Range("D3").Value = "Failed" End If End Sub
Lae alla praktiline töövihik
Lae alla see harjutusvihik, et seda artiklit lugedes harjutada.
Kui avaldus põhineb lahtri väärtusel.xlsmKui avaldus põhineb Exceli VBA lahtri väärtusel
Siin on meil tööleht, mis sisaldab nimed ja märgid mõne kooli õpilaste eksamit.
Meie eesmärk on õppida kasutama Kui avaldus Excelis VBA selle andmekogumi lahtri väärtuse alusel.
1. Ühe lahtri väärtusel põhinev If-deklaratsioon Excel VBAs
Kõigepealt õpime kasutama ühe lahtri väärtusel põhinevat If-avaldust.
Proovime näiteks vaadata, kas Natalia Austin sooritas eksami või mitte, st kas hinne lahtrisse C3 on suurem kui 40 või mitte.
Veerg D sisaldab õpilaste tulemust. See tähendab, et kui lahter C3 sisaldab märki, mis on suurem kui 40, lahter D3 sisaldab "Läbitud" . muidu sisaldab see "Ebaõnnestunud" .
Me kasutame VBA Range objekt, et luua see Kui avaldus lahtri väärtuse alusel.
The VBA kood selleks on:
⧭ VBA kood:
Sub If_Statement_Based_On_a_Single_Cell() If Range("C3").Value>= 40 Then Range("D3").Value = "Passed" Else Range("D3").Value = "Failed" End If End Sub
⧭ Väljund:
Käivita kood koodist Run Sub / UserForm tööriist VBA tööriistariba.
See teeb raku D3 sisaldavad "Ebaõnnestunud" , nagu märk lahtris C3 on väiksem kui 40 ( 32 ).
2. Exceli VBA-s olevate lahtrite vahemiku väärtustel põhinev If-deklaratsioon
Võite kasutada ka Kui avaldus mis põhineb rakkude vahemiku väärtuste alusel rakkude VBA Võite kasutada for-loop sel eesmärgil.
Näiteks siin saame ühe koodiga teada kõigi õpilaste tulemuse. Iteratsioonime läbi ühe for-loop mis kontrollib kõiki lahtreid vahemikus C3:C12 ja tagastab vastava tulemuse, "Läbitud" või "Ebaõnnestunud" .
The VBA kood selleks on:
⧭ VBA kood:
Sub If_Statement_Based_On_a_Range_of_Cells() For i = 1 To Range("C3:C12").Rows.Count If Range("C3:C12").Cells(i, 1).Value>= 40 Then Range("D3:D12").Cells(i, 1).Value = "Passed" Else Range("D3:D12").Cells(i, 1).Value = "Failed" End If Next i End Sub
⧭ Väljund:
Käivita kood koodist Run Sub / UserForm tööriist VBA tööriistariba. See tagastab "Läbitud" märkide puhul, mis on suuremad kui 40 ja "ebaõnnestunud" nende puhul, mis on vähem kui 2,5 %. n 40 .
Asjad, mida meeles pidada
Siin olen näidanud Kui avaldus ühe tingimusega. Kuid kui soovite, võite kasutada mitu tingimust ühe tingimuse sees Kui avaldus .
Kui kasutate VÕI kirjutage mitu tingimust, ühendage need sümboliga VÕI .
Ja kui te kasutate JA kirjutage mitu tingimust, ühendage need sümboliga JA .
Näiteks, et kontrollida, kas märgistus lahtris B3 on suurem kui 40 ja vähem kui 50 või mitte, kasutada:
If (Range("C3").Value> 40 Or Range("C3").Value <50) Then