PENGANTAR APLIKASI KOMPUTER Macro VBA
Macro Visual Basic Aplication Macro adalah baris-baris perintah atau kode yang akan dijalankan MS Excel secara otomatis. Visual Basic for Applications adalah bahasa pemrograman yang Anda gunakan untuk membuat macro.
Menampilkan Developer Tab
MEMULAI MACRO TAB DEVELOPER , CLICK INSERT Pilih button, gambarkan pada lembar sheet 1, assign macro: click_saya macros in: this workbook, click new Ubah tulisan menjadi Click saya Assign Macro : Ketik Msgbox (“Hallo UPJ Saya Chan”) Msgbox perintah untuk menampilkan dialog
Hasil Macro Jalankan tombol Click Saya Save : Latihan Macro 1, Type: Excel Macro – Enabled Workbook
Membuka file Macro Pastikan ms excel tidak memblok macro Lihat pada menu : File -> Option -> Trust Center Click Trust Center Settings
worksheets Worksheets sebagai object dim ws1 as worksheet Set ws1=worksheets(“sheet1”) ws1.cells(2,2)=“hallo saya Chan dari UPJ” Penulisan/pengaksesan worksheet Sheet -> worksheets(1) Sheet -> worksheets(“sheet1”) Cells(2,2) , baris ke dua, kolom ke dua
Latihan Tambah kan button pada Worksheet 1 Assign macro : nama_saya, macros in : this workbook, ubah tulisan pada button menjadi click dan lihat di sheet 2 ! Tampilkan di sheet 2, jika tombol di click maka akan menampilkan tulisan : Universitas Pembangunan Jaya, pada cell A5 atau baris 5, kolom 1
Menambahkan sheet Untuk menambahkan sheet, gunakan perintah add Sheets.add.Name=“nama sheet baru” Assign macro : tambah_sheet, macros in : this workbook, ubah tulisan pada button menjadi Tambah sheet Tuliskan code : On error resume next Sheets.add.Name=“Database” Tambah Sheet
Berpindah Sheet Untuk berpindah sheet, gunakan perintah select Latihan Ada dua cara mengacu pada nama sheet : Sheets(“Sheet1”).Select Urutan nomor : Sheets(1).Select Latihan Tambah button pada sheet1 : Assign macro : PindahSheet1, macros in : this workbook, ubah tulisan pada button menjadi sheet Database Tuliskan code : On error resume next Sheets(“Database”).Select Sheet Database
loop For kondisi awal to kondisi akhir –> next For - next digunakan untuk membuat loop For kondisi awal to akhir Perintah Next Default loop step 1 Step bisa ditambahkan untuk menambah increement angka Contoh : dim ws2 as worksheet Set ws2=worksheets(“sheet2”) For i=1 to 10 Ws2.cells(i,4)= “hallo Universitas Pembangunan Jaya , saya Chan” Loop 10 x
Latihan Loop 1 Masukan button ke sheet 2 Assign macro : loopInteger, ubah tulisan menjadi : angka 1 sd 10 Jika di click , maka akan menampilkan angka dari 1 s/d 10 pada cells C1 s/d C10
Latihan Loop 2 Masukan button ke sheet 3 Assign macro : dollarRupiah Jika di click : Muncul tulisan Dollar pada A1, dan Rupiah B1 maka akan menampilkan angka dari 1 s/d 10 pada cells A2 s/d A11 Menampilkan kelipatan 15000 pada B2 s/d B11, karena 1 dollar = Rp 15.000 Rupiah
Mengakses rumus excel Application.WorksheetFunction Untuk mengakses function pada worksheet seperti count, sum dan lain sebagainya , gunakan : Application.WorksheetFunction.namafunction( Range("Awal:Akhir")) Contoh : Untuk count : Application.WorksheetFunction.Count(Range(“ A1:A5"))
Latihan Loop 3 Pada sheet 4 ,buat lah button : Assignmacro: deret5, Macro in : this workbook Loop 10x pada A1-A10, kemudian hitung total angka pada C1 dan tulisan Total: pada B1, Hitung rata-rata pada C2 dan tulisan rata-rata pada B2 Gunakan rumus untuk menghitung total dan menampilkan pada C1 : Ws1.Cells(1,3)=Application.WorksheetFunction.Sum(Range(“A1:A10")) Jika beda sheet misalkan list ada di sheet2 maka: Ws1.Cells(1,3)=Application.WorksheetFunction.Sum(Range(“Sheet2!A1 :Sheet2!A10")) Deret 5
Mengakses Value cell a=ws1.cells(1,2).value For i=1 to 10 Ws2.cells(i,4)= a Next
Latihan Loop 4 Pada sheet 5 ,buat lah button : Assignmacro: loop_Nama, Macro in : this workbook Loop 15x dari input Dari B1 , tampilkan pada B2-B17, dan tampilkan No 1 sampai 15 pada A2 sampai A17 a=ws5.cells(1,2).value For i=1 to 15 Ws5.cells(i+1,1)= i Ws5.cells(i+1,2)= a Next Loop Nama!
Kondisi If kondisi then Jika kondisi benar Else Jika kondisi salah Endif Contoh : Dim ws3 as worksheet Set Ws3 = worksheets(3) a=ws3.cells(1,2).value If a=2 then B = “akuntansi” C=“upj” B = “Teknik Informatika” C=“Univ Pemb Jaya” ws3.cells(10,1)=B ws3.cells(10,2)=C
TERIMA KASIH