Operator : Logika

Operator logika adalah operator yang digunakan untuk membandingkan dua atau lebih nilai logika (Benar atau Salah) dalam suatu ekspresi logika.

Terdapat enam operator logika yang biasa digunakan dalam pemrograman VBA, Operator Logika yang ada di VBA diantaranya :

OperatorKeteranganContoh
ANDMenghasilkan True jika kedua kondisi yang diuji menghasilkan nilai True.Logic1 And Logic2
ORMenghasilkan True jika salah satu dari kedua kondisi yang diuji menghasilkan nilai True.Logic1 or Logic2
NOTMenghasilkan nilai kebalikan dari kondisi yang diuji.Not Logic1
XORMenghasilkan True jika salah satu, tapi bukan kedua kondisi yang diuji menghasilkan nilai True.Logic1 xor Logic2
EQVMenghasilkan True jika kedua kondisi yang diuji menghasilkan nilai yang sama (baik True atau False).Logic1 Eqv Logic2
IMPMenghasilkan False jika kondisi pertama menghasilkan nilai True dan kondisi kedua menghasilkan nilai False. Menghasilkan True dalam semua kasus lainnya.Logic1 Imp Logic2

Untuk memudahkan, berikut adalah tabel gerbang logika lengkap untuk masing-masing operator logika di VBA berikut dengan penjelasannya:

Operator AND

Operand 1Operand 2OperasiHasil
TrueTrueAndTrue
TrueFalseAndFalse
FalseTrueAndFalse
FalseFalseAndFalse

Operator And digunakan untuk menggabungkan dua kondisi dan menghasilkan nilai True hanya jika keduanya menghasilkan nilai True.

Secara sederhana, operator And dapat diartikan sebagai “dan”. Misalnya, “kondisi A dan kondisi B harus terpenuhi untuk menghasilkan nilai benar/True.”

Berikut adalah contoh penggunaan operator And pada VBA:

If Nilai > 80 And Izin < 2 Then
    'jika kedua kondisi terpenuhi
    MsgBox "Siswa Lulus"
Else
    'jika salah satu atau kedua kondisi tidak terpenuhi
    MsgBox "Siswa Tidak Lulus"
End If

Pada contoh di atas, jika variabel Nilai bernilai lebih besar dari 80 dan variabel Izin lebih kecil dari 2, maka akan menghasilkan nilai True pada kedua kondisi dan pesan “Siswa Lulus” akan ditampilkan pada kotak pesan.

Namun, jika salah satu atau kedua kondisi tidak terpenuhi, maka pesan “Siswa tidak lulus” akan ditampilkan.

Operator OR

Operand 1Operand 2OperasiHasil
TrueTrueOrTrue
TrueFalseOrTrue
FalseTrueOrTrue
FalseFalseOrFalse

Operator Or digunakan untuk menggabungkan dua kondisi dan menghasilkan nilai True jika setidaknya salah satu kondisi menghasilkan nilai True.

Secara sederhana, operator Or dapat diartikan sebagai “atau”. Misalnya, “kondisi A atau kondisi B harus terpenuhi untuk menghasilkan nilai benar/True.”

Berikut adalah contoh penggunaan operator Or pada VBA:

If Nilai > 80 Or Hadir > 70 Then
    'jika kedua kondisi terpenuhi
    MsgBox "Siswa Lulus"
Else
    'jika salah satu atau kedua kondisi tidak terpenuhi
    MsgBox "Siswa Tidak Lulus"
End If

Pada contoh di atas, jika variabel Nilai bernilai lebih besar dari 80 atau variabel Hadir lebih besar dari 70, maka akan menghasilkan nilai True dan pesan “Siswa Lulus” akan ditampilkan pada kotak pesan. Namun, jika kedua kondisi tidak terpenuhi, maka pesan “Siswa Tidak Lulus” akan ditampilkan.

Secara sederhana cukup salah satu saja terpenuhi maka siswa akan lulus.

Operator NOT

Operand 1OperasiHasil
TrueNotFalse
FalseNotTrue

Operator Not digunakan untuk membalik nilai suatu kondisi, sehingga jika kondisi awalnya bernilai True, maka setelah diberi operator Not akan bernilai False, dan sebaliknya.

Secara sederhana, operator Not dapat diartikan sebagai “tidak”. Misalnya, “jika kondisi A tidak terpenuhi, maka akan menghasilkan nilai benar/True.”

Berikut adalah contoh penggunaan operator Not pada VBA:

If Not Nilai > 80 Then
    'jika kondisi x tidak lebih besar dari 0
    MsgBox "Siswa Tidak Lulus"
Else
    'jika kondisi x lebih besar dari 0
    MsgBox "Siswa Lulus"
End If

Operator XOR

Operand 1Operand 2OperasiHasil
TrueTrueXorFalse
TrueFalseXorTrue
FalseTrueXorTrue
FalseFalseXorFalse

Operator Xor (eXclusive OR) digunakan untuk menggabungkan dua kondisi dan menghasilkan nilai True hanya jika hanya salah satu dari kedua kondisi yang terpenuhi, sementara jika kedua kondisi sama-sama terpenuhi atau sama-sama tidak terpenuhi, maka akan menghasilkan nilai False.

Secara sederhana, operator Xor dapat diartikan sebagai “eksklusif atau”. Misalnya, “kondisi A atau kondisi B harus terpenuhi, tapi tidak keduanya, untuk menghasilkan nilai benar/True.”

Berikut adalah contoh penggunaan operator Xor pada VBA:

If x > 0 Xor y < 10 Then
    'jika hanya salah satu dari kedua kondisi yang terpenuhi
    MsgBox "Hanya satu kondisi terpenuhi"
Else
    'jika keduanya sama-sama terpenuhi atau tidak terpenuhi
    MsgBox "Keduanya terpenuhi atau tidak terpenuhi"
End If

Operator EQV

Operand 1Operand 2OperasiHasil
TrueTrueEqvTrue
TrueFalseEqvFalse
FalseTrueEqvFalse
FalseFalseEqvTrue

Operator Eqv (equivalence) digunakan untuk menggabungkan dua kondisi dan menghasilkan nilai True jika kedua kondisi sama-sama terpenuhi atau sama-sama tidak terpenuhi. Sebaliknya, operator Eqv akan menghasilkan nilai False jika hanya salah satu dari kedua kondisi yang terpenuhi.

Secara sederhana, operator Eqv dapat diartikan sebagai “sama jika dan hanya jika”. Misalnya, “kondisi A dan kondisi B sama-sama terpenuhi atau sama-sama tidak terpenuhi untuk menghasilkan nilai benar/True.”

Berikut adalah contoh penggunaan operator Eqv pada VBA:

If x > 0 Eqv y < 10 Then
    'jika kedua kondisi sama-sama terpenuhi atau sama-sama tidak terpenuhi
    MsgBox "Kondisi sama-sama terpenuhi atau tidak terpenuhi"
Else
    'jika hanya salah satu dari kedua kondisi yang terpenuhi
    MsgBox "Hanya satu kondisi terpenuhi"
End If

Operator IMP

Operand 1Operand 2OperasiHasil
TrueTrueImpTrue
TrueFalseImpFalse
FalseTrueImpTrue
FalseFalseImpTrue

Operator Imp (implication) digunakan untuk menggabungkan dua kondisi dan menghasilkan nilai False hanya jika kondisi pertama terpenuhi namun kondisi kedua tidak terpenuhi. Selain itu, operator Imp akan menghasilkan nilai True pada kondisi lainnya.

Secara sederhana, operator Imp dapat diartikan sebagai “jika…maka…”. Misalnya, “jika kondisi A terpenuhi, maka kondisi B harus terpenuhi untuk menghasilkan nilai benar/True.”

Berikut adalah contoh penggunaan operator Imp pada VBA:

If x > 0 Imp y < 10 Then
    'jika kondisi pertama terpenuhi namun kondisi kedua tidak terpenuhi
    MsgBox "Kondisi pertama terpenuhi tapi kondisi kedua tidak terpenuhi"
Else
    'jika kondisi pertama tidak terpenuhi atau kedua kondisi terpenuhi
    MsgBox "Kondisi pertama tidak terpenuhi atau kondisi kedua terpenuhi"
End If

Leave a Reply

Your email address will not be published. Required fields are marked *