Format umum untuk pernyataan If...Then...Elseif….Else adalah sebagai berikut.
If kondisi Then
Ekspresi VB
Elseif
Ekspresi VB
Else
Ekspresi VB
End If
Pernyataan If...Then...Else apa pun harus diakhiri dengan End If. Terkadang tidak perlu menggunakan Else.
Contoh :
Tempatkan tombol perintah pada lembar kerja Anda dan tambahkan baris kode berikut.
CommandButton1_Click()
Dim angka1, angka2 As Single
angka1 = Cells(1,1).Value
angka2 = Cells(1,2).Value
If angka1> angka2 Then
MsgBox “ Angka pertama lebih besar dari angka kedua”
ElseIf angka1< angka2 Then
MsgBox “ Angka pertama lebih kecil dari angka kedua”
Else
MsgBox “ Kedua angka tersebut sama ”
End If
End Sub
Pada contoh ini, program membanding-kan nilai dalam sel (1, 1) dan sel (1, 2) dan menampilkan komentar yang sesuai dalam kotak pesan. Misalnya, jika angka pertama lebih besar dari angka kedua, maka akan muncul pesan “Angka pertama lebih besar dari angka kedua”, seperti yang ditunjukkan pada Gambar.
Mari kita ulangi dengan contoh berikut.
Private Sub CommandButton1_Click()
Dim x, y As Integer
x = Int(Rnd * 10) + 1
Cells(1, 2).Value = x
y = x Mod 2
If Not y = 0 Then
MsgBox " x adalah angka ganjil"
Else
MsgBox " x adalah angka genap"
End If
End Sub
Pada contoh ini, Rnd adalah fungsi acak yang menghasilkan angka acak antara 0 sampai 1. Jadi Rnd*10 menghasilkan angka acak antara 0 sampai 9. Int adalah fungsi dalam VBA yang mengembalikan bilangan bulat. Oleh karena itu, Int(Rnd*10)+1 menghasilkan angka acak antara 1 sampai 10. Mod adalah operator yang mengembalikan sisa ketika suatu angka dibagi dengan angka lain. Jika x adalah angka genap, x Mod 2 akan menghasilkan nol. Berdasarkan logika ini, jika x Mod 2 bukan nol, maka itu adalah angka ganjil; jika tidak, maka itu adalah angka genap.
Latihan :
Judul Program: Penentuan nilai huruf untuk suatu bilangan antara 0 dan 100
Catatan kriteria nilai:
Petunjuk: Buatlah bilangan bulat acak antara 0 dan 100, dengan menggabungkan fungsi Int dan Rnd, yaitu Int(Rnd*100). Pada percobaan ini letakkan hasilnya ke dalam sel A1. Kemudian, berdasarkan nilai di A1, gunakan pernyataan If.......Then....Elseif untuk menempatkan nilai yang sesuai di sel A2
Jadi, ketika Anda mengklik CommandButton1, ia akan menghasilkan angka acak antara 1 dan 100 dan menempatkannya di sel A1 dan nilai yang sesuai di sel A2. Hasilnya ditunjukkan pada Gambar berikut.