Anda di halaman 1dari 10

MODUL MACRO EXCEL

Materi :
-

Pengenalan Macro Excel


Create New Function
Entry Data Form

Created By

: Jumadi (083811531324)

Definisi Macro Excel


Macro adalah rangkaian instruksi di Microsoft Excel untuk tugas yang harus dilakukan pada worksheet
tertentu atau data. Dengan mencatat atau melakukan pemrograman tindakan tertentu, pengguna
Excel menggunakan macro untuk mengotomatisasi tugas-tugas yang berulang-ulang, format lembar
data, atau melakukan operasi matematika yang kompleks. Dengan menggunakan macro, pengguna
Excel dapat meluncurkan hampir tak terhingga banyaknya tugas dan proses dengan sentuhan
sederhana satu tombol, sangat mempercepat kerja spreadsheet yang rumit.
Cara menjalankan Macro
1. Tombol Alt+F11
2. Menu Developer Macro

Mengaktifkan Menu Developer


Excel 2007 : Office Button - Excel Option Pada Menu Popular cek list Show Developer Tab

Excel 2013 : Menu FILE OPTION Customize Ribbon lalu cek list Developer Tab

Membuat Macro
Macro dapat dibuat dengan 2 cara yaitu melalui fitur Recording Macro dan membuat Secara manual
di fitur Visual Basic Editor
Recording Macro

Terdapat 2 model dalam membuat macro dengan menu Recording Macro yaitu:
1. Absolute references
Saat Recording Macro dengan model Absolute references, cell reference yang digunakan di
dalam formula akan bersifat absolut atau tetap, formula tidak akan berubah secara otomatis
jika dipindahkan ke lokasi yang baru, Secara Default excel sudah menetapkan Absolute
references dalam membuat recording macro.
2. Relative references
Saat Recording Macro dengan model Relative references, cell reference yang digunakan di
dalam formula akan bersifat relative atau berubah ubah , reference cell pada formula akan
secara otomatis menyesuaikan pada cell/Range yang aktif jika dipindahkan ke lokasi yang laiin,
Secara Default excel sudah menetapkan Absolute references dalam membuat recording
macro.

Visual Basic Editor


Membuat Macro dengan Visual basic editor dapat di akses dengan menekan tombol Alt+F11 atau klik
icon visual basic pada menu developer. Tampilan jendela kerja visual basic editor sebagai berikut:

Module
Seluruh penulisan kode macro akan ditempatkan dalam sebuah module dan setiap file excel macro
dapat membuat module lebih dari satu module. Secara umum VBA module dapat menampung tiga
tipe kode:
-

Declaration
: berisi kumpulan information statement yang akan digunakan dalam VBA,
contoh deklarasi variabel yang akan digunankan dalam macro
Sub Procedure : Sebuah set instruksi pemprograman yang akan melakukan beberapa action
program. Seluruh record macro akan menjadi Sub procedur
Function
: Sebuah set instruksi pemprograman yang saat melakukan action program
akan mengembalikan sebuah nilai (sama seperti fungsi =SUM pada excel)

Bagian - Bagian VBA


1. VBA Object
o VBA objects seperti Worksheet, Workbook, Range, Cell, Chart, Name, dll.
o Worksheets(Sheet1) merujuk pada sheet pertama
o Range(A1:A5) merujuk pada sebuah Range dari Row 1 , Column 1 sampai Row 5,
Column 1
o Cells (1,1) atau Range(A1) adalah object yang merujuk pada Range A1. Cells (2,1)
atau Range (A2) merujuk pada Range A2.
2. VBA Properties, Methods and Events.
o Properties adalah karakteristik pada sebuah objects contohnya Worksheets.Count,
Worksheets.Visible = False, Range (A1:B15).Rows.Count,
Range(A1:A50).Font.Bold = True.
o Methods adalah action yang dapat dilakukan oleh sebuah Objects, contohnya
Worksheets.Save, Range(A1:A50).ClearContents, ActiveCell.CopySpecial.
o Objects dapat merespon Events, seperti Mouse Click, Double Click pada sebuah Cell,
Saat Worksheet Aktif, Open/Close/Save sebuah Workbook, dll.

Fungsi Looping pada VBA


-

Do .... loop while


1. For loop_ctr = start_num To end_num
2.
'Statements to be executed inside the loop
3. Next loop_ctr

1. For Each item In collection_of_items


2. 'Statements to be executed inside the loop
3. Next item

Do .... loop while


1. Do
2. 'Statements to be executed inside the loop
3. Loop While condition

Do .... loop until


1. Do
2. 'Statements to be executed inside the loop
3. Loop Until condition

while .... Wend


4. While condition
5. 'Statements to be executed inside the loop
6. Wend

Membuat Fungsi Baru


Syntax
Function NamaFunction(Input1, input3, ... , .....)
Statement
End Function
Contoh
Contoh Mencari nama hari dari tanggal
Function DayName(InputDate As Date)
Dim DayNumber As Integer
DayNumber = Weekday(InputDate, vbSunday)
Select Case DayNumber
Case 1
DayName = "Minggu"
Case 2
DayName = "Senin"
Case 3
DayName = "Selasa"
Case 4
DayName = "Rabu"
Case 5
DayName = "Kamis"
Case 6
DayName = "Jumat"
Case 7
DayName = "Sabtu"
End Select
End Function

Mencari Luas
Function luas(panjang As Double, lebar As
Double)
luas = panjang * lebar / 55555
luas = Round(luas, 3)
End Function

Membuat Form Entry Data


Target :
Mampu Menggunakan User Form (toolbox : Label,textbox, combobox,listbox, optionbutton)
Bagian Bagian yang akan di buat:
-

User Form data Entry


Entry Validation
Update data sheet

Entry data yang akan dibuatkan formnya yaitu dapat menampung data ID, Nama, Jenis Kelamin,
Alamat, Kota, Pertanyaan 1 dan Pertanyaan 2 pada sheet Input
Langkah 1 Persiapkan workbook dan sheet beserta header yang diperlukan untuk menampung
data entry

Langkah 2 Buat User form pada visual basic editor melalui menu Insert User Form, lalu desain
Form seperti di Bawah

Keterangan penggunaan Toolbox


ID
Nama
JK Laki Laki
JK Perempuan
Alamat
Kota
Pertanyaan 1
Pertanyaan 2
Save
Cancel
Clear

Toolbox
TextBox
TextBox
Option Button
Option Button
TextBox
ComboBox
ListBox
ListBox
CommandButton
CommandButton
CommandButton

Nama Variabel
QID
Qname
QlakiLaki
QPerempuan
Qalamat
Qkota
Q1
Q2
BtnSave
BtnCancel
btnClear

Untuk Mengetahui atau mengganti Nama Variabel toolbox yang digunakan dapat di lihat properties
masing masing toolbox dengan klik kanan Properties pada toolbox yang digunakan.

Untuk membuat list Nilai combo box Kota dan List Pertanyaan 1 dan 2 harus dibuatkan
procedurenya terlebih dahulu.
Sub userform_initialize()
Mem buat List Jawaban Kota
UserForm1.Qkota1.List = Array("Jakarta", "Jawa Barat", "Banten")
Membuat List Jawaban Pertanyaan 1
UserForm1.Q1.List = Array("1", "2", "3", "4", "5")
Membuat List Jawaban Pertanyaan 2
UserForm1.Q2.List = Array("1", "2", "3", "4", "5")
End Sub

Langkah 3 Membuat Validasi Input


Pertama Membuat variabel global untuk nilai pengecekkan lalu di ikuti dengan procedure validasi
Dim Cek as integer
Sub validation()
cek = 1
Cek Inputan ID
If UserForm1.QID = "" Then
MsgBox ("ID belum di isi")
cek = 0
End If
Cek Inputan Nama
If UserForm1.QName = "" Then
MsgBox ("Nama belum di isi")
cek = 0
End If
Cek Inputan JK
If UserForm1.Qlakilaki = False And UserForm1.Qperempuan = False Then
MsgBox ("Jenis Kelamin belum di isi")
cek = 0
End If
End Sub

Langkah 4 Update data ketika klik Tombol Save


Untuk menulis procedure Tombol save dapat dilakukan dengan double klik command button Save
pada user form yang sedang dibuat maka secara otomatis VBA akan membuat procedure ketika
tombol Save di klik untuk menulis perintah Save data. Lalu tulis pada module perintah dibawah
Private Sub btnsave_Click()
Dim i As Integer
'Validasi Input data sebelum di Save
Call validation
'Jika hasil validasi menghasilkan nilai cek = 0 maka keluar dari procedure
If cek = 0 Then Exit Sub
'Mencari Baris Terakhir yang belum di input
i=1
While ActiveWorkbook.Worksheets("Input").Range("A" & i).Value <> ""
i=i+1
Wend
'mencari Nilai JK
If UserForm1.Qlakilaki = True Then
gender = "Laki - Laki"
Else
gender = "Perempuan"
End If
'Memasukkan Data entry ke sheet "Input"
With ActiveWorkbook.Worksheets("input")
.Cells(i, 1) = i - 1
.Cells(i, 2) = UserForm1.QID.Value
.Cells(i, 3) = UserForm1.QName.Value
.Cells(i, 4) = gender
.Cells(i, 5) = UserForm1.Qalamat.Value
.Cells(i, 6) = UserForm1.Qkota1.Value
.Cells(i, 7) = UserForm1.Q1.Value
.Cells(i, 8) = UserForm1.Q2.Value
End With
End Sub

Langkah 5 Menghapus semua entry yang ada pada user form untuk memasukkan data baru
Pada user form double klick tombol CLEAR, Lalu masukkan program di bawah
Private Sub btnclear_Click()
UserForm1.QID.Value = ""
UserForm1.QName.Text = ""
UserForm1.Qlakilaki.Value = False
UserForm1.Qalamat.Text = ""
UserForm1.Qperempuan.Value = False
UserForm1.Qkota1.Text = ""
UserForm1.Q1.Text = ""
UserForm1.Q2.Text = ""
End Sub

Langkah 6 Tutup Form entry Ketika cancel dan selesai Input


Pada user form double klick tombol Cancel, Lalu masukkan program di bawah
Private Sub btncancel_Click()
Unload Me
End Sub

Langkah 7 Memunculkan User form di excel


Setelah selesai membuat user form langkah selanjutnya adalah memunculkan User form tersebut
pada excel dengan cara membuat macro/procedur yang fungsinya untuk memunculkan form.
Program untuk memunculkan form sebagai berikut
Sub showForm()
UserForm1.Show
End Sub

10

Anda mungkin juga menyukai