Declarația VBA If - Then - Else în Excel (4 exemple)

  • Imparte Asta
Hugh West

Instrucțiunile condiționale sunt utilizate pentru a efectua un set de acțiuni în funcție de condiția specificată în limbajele de programare. În acest articol, vă vom arăta ce este Dacă - Atunci - Altfel declarație condiționată în VBA Excel este și cum se utilizează.

Descărcați caietul de lucru

Puteți descărca gratuit caietul de lucru Excel de practică de aici.

If-Then-Else în VBA.xlsm

Introducere în declarația If - Then - Else în VBA

VBA If - Then - Else Instrucțiunea condițională este utilizată în principal pentru a decide fluxul de execuție a condițiilor. Dacă condiția este adevărată, atunci se execută un anumit set de acțiuni, iar dacă condiția este falsă, atunci se efectuează un alt set de acțiuni.

  • Sintaxa
 If condition Then [statements] [Else else_statements] 

Sau,

 If condition Then [statements] [Else [else_statements]]] End If 

Aici,

Argument Necesar/ Opțional Descriere
condiție Necesar O expresie numerică sau o expresie de șir de caractere care evaluează dacă expresia este Adevărat sau Fals . în cazul în care condiție este nulă, se consideră că Fals .
declarații Opțional Un formular cu o singură linie care nu are Altfel Una sau mai multe declarații trebuie să fie separate prin două puncte de suspensie. În cazul în care se aplică clauza condiție este Adevărat , atunci se execută această declarație.
else_statements Opțional Se efectuează una sau mai multe declarații dacă nu există nicio declarație anterioară condiție este Adevărat .

4 Exemple de utilizare a declarației VBA If - Then - Else în Excel

În această secțiune, veți învăța cum să utilizați If-Then-Else în VBA cod cu 4 exemple.

1. Găsiți cel mai mare număr dintre două numere cu ajutorul declarației If - Then - Else

Dacă aveți două numere și doriți să aflați care dintre ele este mai mare (sau mai mic), atunci puteți folosi funcția If-Then-Else declarație în VBA .

Pași:

  • Apăsați Alt + F11 de pe tastatură sau mergeți la fila Dezvoltator -> Visual Basic pentru a deschide Editor Visual Basic .

  • În fereastra de cod pop-up, din bara de meniu, faceți clic pe Inserare -> Modul .

  • Copiați următorul cod și lipiți-l în fereastra de cod.
 Private Sub BiggestNumber() Dim Num1 As Integer Dim Num2 As Integer Num1 = 12345 Num2 = 12335 If Num1> Num2 Then MsgBox "1st Number is Greater than the 2nd Number" ElseIf Num2> Num1 Then MsgBox "2nd Number is Greater than the 1st Number" Else MsgBox "1st Number and the 2nd Number are Equal" End If End Sub 

Codul dumneavoastră este acum gata de a fi executat.

Aici, comparăm două numere 12345 și 12335 , pentru a afla care dintre ele este mai mare. Acest proces este de obicei perfect pentru a găsi numere mari într-un set de date mare.

  • Apăsați F5 de pe tastatură sau, din bara de meniu, selectați Run -> Run Sub/UserForm Puteți, de asemenea, să faceți clic pe pictograma mică de redare din bara de submeni pentru a rula macrocomenzul.

Rezultatul îl veți obține în fereastra Excel MsgBox

În cazul nostru, numărul 12345 - stocate în variabila Num1 - este mai mare decât numărul 12335 , Num2 Deci, MsgBox ne arată că Primul număr este mai mare decât al doilea număr .

Citește mai mult: Formula Excel pentru a genera numere aleatorii (5 exemple)

2. Verificarea rezultatului elevului folosind declarația If - Then - Else în VBA

Puteți verifica dacă un student promovează sau nu un examen cu această declarație în VBA cod.

Pași:

  • În același mod ca și înainte, deschideți Editor Visual Basic de la Dezvoltator fila și Introduceți a Modul în fereastra de cod.
  • În fereastra de cod, copiați următorul cod și lipiți-l.
 Sub CheckResult() If Range("D5").Value> 33 Then MsgBox "John's Result is Pass" Else MsgBox "John's Result is Fail" End If End Sub 

Codul dumneavoastră este acum gata de a fi executat.

Acest cod va verifica dacă Cell D5 are o valoare mai mare decât 33 Dacă da, atunci va afișa o ieșire, dacă nu, atunci va afișa altceva.

  • Rulați macro și veți obține rezultatul conform codului dumneavoastră.

Priviți setul de date de mai sus cu rezultatul, Cell D5 deține 95 care este cu siguranță mai mult decât 33 , prin urmare, se afișează Rezultatul este Pass Dar dacă rulăm codul pentru Cell D7 (22), atunci se va afișa altfel.

Citește mai mult: Cum se utilizează declarația de caz VBA (13 exemple)

Lecturi similare

  • Cum se utilizează funcția Log în Excel VBA (5 exemple adecvate)
  • Utilizați funcția VBA LTrim în Excel (4 exemple)
  • Cum se utilizează funcția VBA FileDateTime în Excel (3 utilizări)
  • Utilizați operatorul VBA Mod (9 Exemple)
  • Funcția VBA EXP în Excel (5 exemple)

3. Actualizarea comentariilor din nota elevului folosind mai multe declarații If - Then - Else în VBA

Ați învățat cum să extrageți dacă un elev trece sau nu cu un singur If-Then-Else dar de data aceasta veți învăța despre Mai multe If-Then-Else cu următorul exemplu.

Vom rula un VBA cod pentru a completa acele Comentariu pe baza mai multor condiții.

Pași:

  • În același mod ca și înainte, deschideți Editor Visual Basic de la Dezvoltator fila și Introduceți a Modul în fereastra de cod.
  • În fereastra de cod, copiați următorul cod și lipiți-l.
 Sub UpdateComment() For Each grade In Range("D5:D10") If grade = "A" Then grade.Offset(0, 1).Value = "Great Work" ElseIf grade = "B" Then grade.Offset(0, 1).Value = "Keep It Up" ElseIf grade = "C" Then grade.Offset(0, 1).Value = "Needs Improvement" Else grade.Offset(0, 1).Value = "Parents-Teacher Meeting" End If Next grade EndSub 

Codul dumneavoastră este acum gata de a fi executat.

Acest cod va imprima comentarii în funcție de nota obținută de elevi.

  • Rulați acest cod și vedeți următoarea imagine în care casetele de comentarii sunt completate cu rezultatele corespunzătoare.

4. Enunț If-Then-Else pentru a actualiza direcțiile cardinale pe baza codului din Excel

Puteți utiliza, de asemenea, funcția If-Then-Else pentru a afla direcțiile cardinale pe baza codului indicator furnizat. Priviți următoarea imagine în care vom afla direcțiile pe baza inițialelor care au fost date.

Pași:

  • Deschideți Editor Visual Basic de la Dezvoltator fila și Introduceți a Modul în fereastra de cod.
  • În fereastra de cod, copiați următorul cod și lipiți-l.
 Sub UpdateDir() For Each iDirection In Range("B5:B8") If iDirection = "N" Then iDirection.Offset(0, 1).Value = "North" ElseIf iDirection = "S" Then iDirection.Offset(0, 1).Value = "South" ElseIf iDirection = "E" Then iDirection.Offset(0, 1).Value = "East" Else iDirection.Offset(0, 1).Value = "West" End If Next iDirection EndSub 

Codul dumneavoastră este acum gata de a fi executat.

  • Rulați acest cod și veți obține numele direcțiilor în celulele respective.

Sau, dacă doriți să găsiți doar o singură direcție bazată pe cod, puteți utiliza codul de mai jos.

 Sub UpdateDirections() Dim iDirection As String Dim iDirectionName As String iDirection = Range("B5").Value If iDirection = "N" Then iDirectionName = "North" ElseIf iDirection = "S" Then iDirectionName = "South" ElseIf iDirection = "E" Then iDirectionName = "East" Else iDirectionName = "West" End If Range("C5").Value = iDirectionName End Sub 

Acest cod va prelua valoarea din Cell B5 în considerare și returnează rezultatul în funcție de acesta în celula C5 .

De exemplu, dacă scrieți " N " în Cell B5 , vă va da " Nord ; dacă scrieți " S " în Cell B5 , vă va arăta " Sud " în Cell C5 .

Concluzie

Acest articol v-a arătat cum să utilizați Dacă - Atunci - Altfel în Excel cu VBA . sper că acest articol a fost foarte benefic pentru dvs. Nu ezitați să mă întrebați dacă aveți întrebări legate de acest subiect.

Hugh West este un trainer și analist Excel cu o experiență de peste 10 ani în industrie. Deține o diplomă de licență în contabilitate și finanțe și un master în administrarea afacerilor. Hugh are o pasiune pentru predare și a dezvoltat o abordare unică de predare care este ușor de urmărit și de înțeles. Cunoștințele sale experte despre Excel au ajutat mii de studenți și profesioniști din întreaga lume să-și îmbunătățească abilitățile și să exceleze în cariera lor. Prin blogul său, Hugh își împărtășește cunoștințele lumii, oferind tutoriale gratuite Excel și instruire online pentru a ajuta persoanele și companiile să-și atingă întregul potențial.