Seiring dengan perkembangan zaman, sudah tidak bisa dipungkiri lagi bahwa komputer adalah suatu mesin yang dapat mempermudah pekerjaan manusia. Khusunya dalam bidang perkantoran sangat terbantu sekali dengan kehadiran komputer.
Kehebatan komputer tentu tidak semata-mata bisa canggih dengan sendirinya. Komputer bisa melakukan sesuatu yang luar biasa dikarenakan bahasa-bahasa pemerograman yang dibuat sebelumnya.
Salah satu produk hebat komputer yang terbuat dari bahasa pemrograman yang canggih adalah aplikasi Ms. Excel. Aplikasi Ms. Excel ini dilengkapi dengan fitur-fitur yang dapat mempermudah pekerjaan manusia. Salah satu fitur hebat tersebut adalah VBA Ms. Excel. Dalam VBA Excel kita bisa membuat suatu macro. Untuk membuat suatu macro tentu kita harus faham tentang coding script VBA Excel.
Kali web Matematika Akuntansi akan berbagi ilmu tentang coding kondisional dan pengulangan dalam VBA Excel.
Pengertian Kondisional dalam VBA Excel
Kondisional adalah pengontrol yang berguna untuk mengalihkan program ke proses tertentu. Kondisional digunakan untuk membuat pencabangan struktur suatu program. Dengan memanfaat kondisional, kita bisa memblock program yang akan dijalankan jika memenuhi sebuah kondisi dan memblock yang tidak akan dijalankan apabila tidak memenuhi kondisi lainnya.
Pengertian Pengulangan dalam VBA Excel
Pengulangan dalam VBA Excel adalah suatu perintah yang dihasilkan dari script program VBA Excel untuk membuat bagian tertentu dari block program, agar dilakukan terus-menerus dan berulan-ulang jika masih berada dalam kondisi True dan berhenti apabila kondisi sudah False.
Berikut adalah coding kondisional dan pengulangan VBA Excel, diantaranya adalah :
A. Kondisional :
A1. If-Then;A2. Select Case;A3. GoTo.
B. Pengulangan :
B1. For-Next;B2. Do-While;B3. Do-Until.
A1. Coding Script If-Then VBA Excel
Script If-Then adalah script VBA yang dapat mengeksekusi secara bersyarat sekelompok pernyataan yang bergantung pada nilai suatu ekspresi.
Syntax If-Then VBA Excel
Ada dua
jenis syntax dari If-Then, diantaranya adalah :
Multiline Syntax If-Then VBA Excel
- Multiline
- Singel-line
Multiline Syntax If-Then VBA Excel
If condition [ Then ]
[ statements ]
[ ElseIf elseifcondition [ Then ]
[ elseifstatements ] ]
[ Else
[ elsestatements ] ]
End If
[ statements ]
[ ElseIf elseifcondition [ Then ]
[ elseifstatements ] ]
[ Else
[ elsestatements ] ]
End If
Single-line Syntax If-Then VBA Excel
If condition Then [ statements ] [ Else [ elsestatements ] ]
- condition adalah suatu ekspresi yang harus mengevaluasi ke True atau False;
- statements adalah satu atau lebih pernyataan berikut yang dijalankan jika condition bernilai True;
- elseIf elseifcondition adalah suatu ekspresi yang harus mengevaluasi ke True atau False jika ada ElseIf;
- elseifstatements adalah satu atau lebih pernyataan setelah ElseIf ... Then yang akan dieksekusi jika elseifcondition bernilai True;
- elsestatements adalah satu atau lebih pernyataan yang dijalankan jika tidak ada kondisi sebelumnya atau ekspresi kondisi lain yang mengevaluasi ke True;
- End If adalah script yang berfungsi untuk menghentikan versi multiline dari blok If ... Then ... Else.
Contoh Script Coding If-Then VBA Excel
Sub Login()
Dim Password As String
Password = InputBox("Isi Password")
If Password = "pajarsidik" Then
MsgBox "Password anda benar"
Else
MsgBox "Password anda salah"
End If
End Sub
Dim Password As String
Password = InputBox("Isi Password")
If Password = "pajarsidik" Then
MsgBox "Password anda benar"
Else
MsgBox "Password anda salah"
End If
End Sub
Penjelasan :
A2. Coding Script Select Case VBA Ms. Excel
Select case adalah script VBA Excel yang berfungsi untuk menjalankan salah satu dari beberapa grup pernyataan yang bergantung pada nilai ekspresi.
Syntax Select Case VBA Excel
Select Case testexpression
[ Case expressionlist-n [ statements-n ]]
[ Case Else [ elsestatements ]]
End Select
[ Case expressionlist-n [ statements-n ]]
[ Case Else [ elsestatements ]]
End Select
Keterangan :
Jika script dijalankan dan input box disi dengan 90, maka akan menghasilkan hasil seperti gambar di bawah ini :
- testexpression adalah suatu ekspresi numerik atau ekspresi string apa pun;
- expressionlist-n adalah daftar yang dipisahkan dari satu atau lebih bentuk berikut ekspresi, ekspresi ke expresi, ekspresi Iscomparisonoperator;
- statements-n adalah satu atau lebih pernyataan yang dijalankan jika testexpression cocok dengan bagian manapun dari expressionlist-n;
- elsestatements adalah satu atau beberapa pernyataan dijalankan jika testexpression tidak cocok dengan expresi mana pun.
Contoh Script Coding Select Case VBA Excel
Sub PilihKejadian()
Dim Jumlah As Integer
Dim Potongan As Double
Dim Harga As Integer
Jumlah = InputBox("Isi jumlah pembelian")
Harga = 10000
Select Case Jumlah
Case 0 To 20
Potongan = 0.1
Case 21 To 40
Potongan = 0.2
Case 41 To 60
Potongan = 0.3
Case 61 To 80
Potongan = 0.4
Case 81 To 100
Potongan = 0.5
End Select
MsgBox "Anda mendapat potongan senilai " & "Rp." & Potongan * Harga * Jumlah
End Sub
Dim Jumlah As Integer
Dim Potongan As Double
Dim Harga As Integer
Jumlah = InputBox("Isi jumlah pembelian")
Harga = 10000
Select Case Jumlah
Case 0 To 20
Potongan = 0.1
Case 21 To 40
Potongan = 0.2
Case 41 To 60
Potongan = 0.3
Case 61 To 80
Potongan = 0.4
Case 81 To 100
Potongan = 0.5
End Select
MsgBox "Anda mendapat potongan senilai " & "Rp." & Potongan * Harga * Jumlah
End Sub
Penjelasan :
Contoh script di atas adalah berisi perintah untuk mengisi input box dengan jumlah pembelian dengan ketentuan :- Beli 01 sampai 20 mendapat diskon 10%
- Beli 21 sampai 40 mendapat diskon 20%
- Beli 41 sampai 60 mendapat diskon 30%
- Beli 61 sampai 80 mendapat diskon 40%
- Beli 81 sampai 100 mendapat diskon 50%
Jika script dijalankan dan input box disi dengan 90, maka akan menghasilkan hasil seperti gambar di bawah ini :
Hasilnya :
A3. Coding Script GoTo VBA Ms. Excel
GoTo adalah script yang berfungsi untuk melompat ke bagian lain dalam script. GoTo akan melompat ke block script tertentu apabila ada kondisi yang bernilai True.
Syntax GoTo VBA Excel
GoTo line
Keterangan :
- Line Argument yang dibutuhkan dapat berupa Line Label atau bisa juga Line Number.
Contoh Script Coding If-Then VBA Excel
Sub Melompat()
Dim Angka As Integer
Angka = 1
If Angka <> 1 Then GoTo Line
MsgBox "Angka adalah satu"
Exit Sub
Line:
MsgBox "Angka bukan satu"
End Sub
Dim Angka As Integer
Angka = 1
If Angka <> 1 Then GoTo Line
MsgBox "Angka adalah satu"
Exit Sub
Line:
MsgBox "Angka bukan satu"
End Sub
Penjelasan :
Contoh diatas adalah perintah apabila Angka tidak sama dengan satu, maka akan melompat ke Line dan jika tidak, maka akan menampilkan kotak pesan yang berisi “Angka adalah satu”.B1. Coding Script For-Next VBA Excel;
Scirpt coding For-Next adalah suatu script VBA Excel yang berfungsi untuk mengulangi sekelompok pernyataan beberapa kali.
Berikut ini adalah syntax dari script For-Next :
Syntax For-Next VBA Excel
For counter [ As datatype ] = start To end [ Step step ]
[ statements ]
[ Continue For ]
[ statements ]
[ Exit For ]
[ statements ]
Next [ counter ]
[ statements ]
[ Continue For ]
[ statements ]
[ Exit For ]
[ statements ]
Next [ counter ]
Keterangan :
- counter adalah variabel untuk mengontrol pengulangan (Dibutuhkan);
- datatype adalah suatu tipe data dari counter (Pilihan);
- start adalah nilai awal ekspresi counter (Dibutuhkan);
- end adalah akhir ekspresi counter (Dibutuhkan) ;
- step adalah jumlah penghitung counter setiap kali memulai pengulangan (Pilihan);
- statements adalah satu atau lebih pernyataan antara For dan Next untuk menjalankan yang telah ditentukan (Pilihan);
- Continue For adalah kontrol transfer ke pengeluangan selanjutnya (Pilihan);
- Exit For adalah kontrol keluar dari pengulangan For (Pilihan);
- Next adalah untuk menghentikan pengulangan For (Dibutuhkan).
Keterangan tambahan :
- Maksud dari Dibutuhkan adalah harus ada pada script dan maksud dari Pilihan adalah boleh ada atau boleh tidak ada pada script.
Contoh Script Coding For-Next VBA Excel
Sub Mebuatnomorurut()
Dim x As Integer
For x = 1 To 10
Cells(x, 1).Value = x
Next x
End Sub
Penjelasan :
Contoh di atas adalah contoh script VBA Excel yang akan menampilkan nomor urut 1 sampai dengan 10 pada range A1 sampai dengan A10. Untuk lebih jelasnya perhatkan gambar di bawah ini :
B2. Coding Script Do-While VBA Excel;
Script VBA Do-While adalah suatu script pengulangan dalam VBA Excel yang mengulangi suatu block dari suatu pernyataan selama kondisi masih True atau benar.
Berikut adalah syntax script Do-While :
Syntax Do-While VBA Excel
Do
[ statements ]
[ Exit Do ]
[ statements ]
Loop [{While} condition ]
[ statements ]
[ Exit Do ]
[ statements ]
Loop [{While} condition ]
Atau :
Do [{While} condition ]
[ statements ]
[ Exit Do ]
[ statements ]
Loop
[ statements ]
[ Exit Do ]
[ statements ]
Loop
Keterangan :
- condition adalah suatu expresi numerik atau string yang bisa menghasilan nilai True atau False (Dibutuhkan);
- statements adalah satu atau lebih pernyataan yang diulangi sementara atau sampai kondisinya True atau benar;
- Pernyataan Exit Do dapat ditempatkan di bagian mana saja script Do… Loop sebagai cara alternatif untuk keluar dari script Do… Loop.
Contoh Script Coding Do-While VBA Excel
Sub NomorUrut()
Dim x As Integer
Do
x = x + 1
Cells(x, 1).Value = x
Loop While (x < 10)
End Sub
Dim x As Integer
Do
x = x + 1
Cells(x, 1).Value = x
Loop While (x < 10)
End Sub
Penjelasan :
Contoh script di atas adalah berisi perintah dengan hasil mengisi cell A1 sampai dengan A10 dengan nomor urut 1 sampai dengan 10. Kunci dari perintah di atas adalah variabel x dengan pengulangan variabel selama kurang dari 10. Hasil dari secript di atas apabila dijalankan adalah sebagai berikut :
B3. Coding Script Do-Until VBA Excel;
Script VBA Do-Until adalah suatu script pengulangan dalam VBA Excel yang mengulangi suatu block dari suatu pernyataan sampai dengan kondisi masih True atau benar.
Berikut adalah syntax script Do-Until :
Syntax Do-Until VBA Excel
Do
[ statements ]
[ Exit Do ]
[ statements ]
Loop [{Until} condition ]
[ statements ]
[ Exit Do ]
[ statements ]
Loop [{Until} condition ]
Atau :
Do [{Until} condition ]
[ statements ]
[ Exit Do ]
[ statements ]
Loop
[ statements ]
[ Exit Do ]
[ statements ]
Loop
Keterangan :
- condition adalah suatu expresi numerik atau string yang bisa menghasilan nilai True atau False (Dibutuhkan);
- statements adalah satu atau lebih pernyataan yang diulangi sementara atau sampai kondisinya True atau benar;
- Pernyataan Exit Do dapat ditempatkan di bagian mana saja script Do… Loop sebagai cara alternatif untuk keluar dari script Do… Loop.
Contoh Script Coding Do-Until VBA Excel
Sub NomorUrut()
Dim x As Integer
Do
x = x + 1
Cells(x, 1).Value = x
Loop Until(x = 10)
End Sub
Dim x As Integer
Do
x = x + 1
Cells(x, 1).Value = x
Loop Until(x = 10)
End Sub
Penjelasan :
Contoh
script di atas adalah berisi perintah dengan hasil mengisi cell A1
sampai dengan A10 dengan nomor urut 1 sampai dengan 10. Kunci dari
perintah di atas adalah variabel x dengan pengulangan variabel sampai dengan 10. Hasil dari secript di atas apabila dijalankan adalah
sebagai berikut :
Demikian artikel kali ini.
Mohon maaf apabila ada salah-salah kata.
Apabila ada yang ingin ditanyakan atau disampaikan, silahkan untuk menulis pada kolom komentar di bawah.
Apabila ada yang ingin ditanyakan atau disampaikan, silahkan untuk menulis pada kolom komentar di bawah.
Referensi :
- https://docplayer.info/amp/37827239-Bab-2-statement-statement-pada-vba-excel.html&ved=2ahUKEwjSv5mAi-nsAhUEeysKHbQwD4MQFjACegQIBhAB&usg=AOvVaw3__ma0jl1K4J63uED90nw-&cf=1
- https://docs.microsoft.com/en-us/dotnet/visual-basic.
Salam,
Muhamad Pajar Sidik
President Director of (matematikaakuntansi.blogspot.com)
Email : fajarmoehamad@gmail.com
Muhamad Pajar Sidik
President Director of (matematikaakuntansi.blogspot.com)
Email : fajarmoehamad@gmail.com
Jika ingin bertanya secara privat, Silahkan hubungi no 085709994443 dan untuk berkomentar silahkan klick link di bawah ini 👇