Langsung ke konten utama

VBA Fungsi Logika (IF, Then, Else, ElseIf)


Seperti yang telah dibahas sebelumnya dalam Pengantar VBA bahwa visual basic memiliki fungsi logika. Fungsi ini membantu user ketika menghadapi kemungkinan arau probabilitas tertentu. Terkadang user menghadapi berbagai kemungkinan situasi default dan hasil, seperti kemungkinan A, B, C, dan seterusnya. kemudian dari berbagai kemungkinan itu user harus memutuskan output yang mungkin dihasilkan seperti hasil O, P, Q dan seterusnya.

User harus mampu menjelaskan itu kepada visual basic dalam kalimat coding. Dan disini user dengan bebas membangun banyak kondisi, kriteria dan output yang mungkin dihasilkan dalam sebuah pernyataan (statement) Disini posisi inti dari elemen pemrograman. User dapat melakukan sebuah keputusan dengan fungsi logis tersebut. 


Contoh Deklarasi

Berikut adalah contoh deklarasi kondisi logika VBA sederhana menggunakan  If .. Else. Penulisan coding diawali dengan "Sub" sehingga harus diakhiri dengan "End Sub" diakhiri command. Begitu pula dengan penggunaan "If" yang juga harus diakhiri dengan command "End If"



Sekarang mari kita bayangkan bahwa cell A1 merupakan hasil ujian siswa. Jika hasil ujian siswa pada cell A1 bernilai dibawah atau kurang dari 50, maka sebuah Message Box akan muncul dengan statement: "Gagal". Jika tidak (nilai siswa sama atau diatas 50) maka Message Box akan muncul dengan statement: "Lulus".



Dari kode tersebut user menciptakan dua kondisi yang mungkin, yaitu: nilai siswa berada dibawah 50, dan nilai siswa berada sama atau diatas 50. Users juga menciptakan dua output yang mungkin apabila kondisi cell A1 sudah diketahui, yaitu:  sebuah Message Box akan muncul dengan statement: "Gagal" atau "Lulus


No Deskripsi Format
1 If .. Then If [Kondisi Benar] Then
    [Eksekusi]
End If
2 If ... Else If [Kondisi Benar] Then
    [Eksekusi 1]
Else
    [Eksekusi 2]
End If
3 If ...ElseIf If [Kondisi A] Then
    [Eksekusi 1]
ElseIf [Kondisi B] Then
    [Eksekusi 2]
End If
4 Else and ElseIf

If [Kondisi A] Then
      [Eksekusi 1]
ElseIf [Kondisi B] Then
      [Eksekusi 2]
Else
      [Eksekusi 3]
End If


Beberapa logika statement operator lain juga dapat digunakan untuk memperbesar pilihan kondisi maupun output yang ingin dihasilkan, seperti menggunakan kombinasi IF, Then, Else, Elseif. Ringkasan structure command dapat dilihat pada table di atas.


Else vs ElseIf

Jika user memiliki satu set data dan ingin membangun suatu kriteria untuk memisahkan data kedalam 2 event atau kondisi yang berbeda, maka user memiliki dua pilihan:
  1. User membangun Kriteria event ./ kondisi pertama, namun mengabaikan kriteria event / kondisi ke dulu (Else)
  2. User membangun Kriteria event ./ kondisi pertama dan kedua (ElseIf)

Pengabaian pada "Else" seperti menggunakan istilah "Dan Lain-Lain (Dll)" dalam keseharian kita. Kita hanya peduli dan fokus pada satu kriteria yang kita anggap penting sementara kondisi diluar itu akan di eksekusi dengan cara yang berbeda. Atau alam pemrograman visual basic "ElseIf" adalah "IF" ke-2, ke-3, ke-4, dst.

Jika masih belum memahami perbedaan tersebut, maka mari kita buat contoh kondisi command untuk satu buah apel, satu buah jeruk, dan satu buah Melon. Satement "ElseIf" akan membangun kriteria Baik untuk menargetkan Apel maupun Jeruk. Sementara "Else"" hanya fokus kepada kriteria Apel, dan mengabaikan buah yang lainnya. Sehingga "Else" akan membangun kriteria apel, sementara buah lain (dalam hal ini Jeruk dan Melon) akan dikelompokkan dan diberi lable: "Bukan Apel"

ElseIf  :
  1. Apel
  2. Jeruk
  3. Melon
Else :
  1. Apel
  2. Bukan Apel

Komentar