You are on page 1of 53

Macro dalam Microsoft Word : Apa dan Bagaimana

Salah satu kelebihan Microsoft Word adalah adanya satu fasilitas yang bernama macro.
Fasilitas ini mempunyai fleksibilitas dimana user dapat membentuk dan mengarahkannya
untuk berbagai macam kepentingan dalam koridor otomatisasi. Dari yang sederhana
sampai yang mampu berreplikasi seperti virus macro.
Apa Sih macro itu ?
Macro merupakan kumpulan perintah - perintah dalam Word yang dirangkai menadi satu
perintah. Sehingga pekeraan yang berulang - ulang dapat dilakukan secara otomatis dan
mudah. !al ini akan sangat menguntungkan ketimbang melakukan perintah - perintah
secara satu per satu dan berulang - ulang. "ontoh yang sederhana misalnya pembaca
sering menuliskan suatu kata atau kalimat yang sama secara terus - menerus# maka yang
semacam ini dapat dibuatkan macronya sehingga pekeraan mengetik menadi lebih cepat
dan mudah serta tidak membuang - buang $aktu.
Macro %a$aan Microsoft Word
Sebenarnya semua perintah - perintah yang ada dalam Word merupakan macro. Misalnya
ketika pembaca memilih menu File kemudian Save# maka Word akan menalankan macro
yang bernama FileSave. %egitu uga ketika pembaca memilih menu !elp kemudian
About Microsoft Word# maka akan dialankan macro !elpAbout sehingga tampil kotak
About Microsoft Word. "obalah alankan aplikasi Word kemudian pilihlah menu &ools '
Macro ' Macros# maka akan dihadapkan pada kotak dialog macros. Selanutnya pada
kotak Macro in pilihlah Word commands# sehingga akan terlihat nama - nama macro
yang ada di Word. (ilihlah !elpAbout kemudian tekan tombol )un.
%ila seorang user membuat sebuah macro dengan nama yang sama dengan nama macro
yang telah ada dalam Word commands# maka Microsoft Word akan mendahulukan macro
yang dibuat oleh user.
Membuat Macro
Ada dua cara untuk membuat macro* menggunakan macro recorder atau menggunakan
editor +isual %asic yang telah disertakan saat pembaca menginstall Microsoft Word.
Membuat Macro Menggunakan Macro )ecorder
"ara ini merupakan cara yang paling mudah dalam membuat macro. "ukup mengikuti
langkah - langkah berikut ini ,
- .alankan program Microsoft Word
- Setelah endela Microsoft Word tampil pilihlah menu &ools ' Macro ' )ecord /e$
Macro
- 0ser dihadapkan pada kotak dialog )ecord Macro seperti pada gambar 1. %eri nama
untuk macro yang akan user buat pada kotak Macro /ame# misalnya 2(ercobaan12. (ada
kotak Store macro in# dapat menentukan dokumen yang akan digunakan untuk
menyimpan macro. %ila memilih /ormal.dot# berarti macro akan disimpan di file
/ormal.dot dan akan tetap ada setiap kali akan menalankan Word. %ila memilih yang
kedua yaitu pada dokumen yang sedang dibuat# maka macro hanya akan ada pada
dokumen tersebut. %ila membuka dokumen yang lain atau membuat dokumen yang baru#
maka macro yang akan dibuat ini tidak akan ada. Dalam hal ini penulis memilih
/ormal.dot. Setelah itu tekan tombol 3k
Melindungi Word dengan Password
%ila komputer Anda digunakan beramai-ramai oleh banyak orang# Anda harus
melindungi aplikasi yang tidak boleh dipakai oleh semua orang. /ah# ada cara sederhana
agar orang lain tidak dapat menggunakan aplikasi Word seenaknya.
4ita bisa membuat sebuah aplikasi di mana bila seseorang ingin menggunakan aplikasi
Microsoft Word mereka harus memasukkan sebuah pass$ord yang telah kita tentukan.
"aranya begini,
1. %uka aplikasi Microsoft Word Anda# kemudian pilih tab 5+ie$6.
7. (ada pita di ba$ahnya# klik tombol 5Macros6.
8. Setelah muncul endela 9Macros:# isi 9Macro name: dengan nama 9Auto/e$:. (erlu
diperhatikan# nama makro harus disimpan dengan nama 9Auto/e$:.
;. 4lik 5"reate6 untuk mulai membuat makro.
<. Selanutnya# akan muncul endela Microsoft +isual %asic editor. (ada endela tersebut#
ketikkan skrip di ba$ah ini.
pass = >nput%o?@2Masukkan pass$ord Anda.2A
>f pass = 2rahasia2 &hen
Bnd
Blse
Msg%o? @2(ass$ord yang Anda masukkan salah.2A
ActiveDocument."lose
Bnd >f
(ada skrip di atas# Anda dapat mengganti 9rahasia: dengan pass$ord yang akan Anda
inginkan.Simpan makro Anda kemudian tutup aplikasi Microsoft Word.
Sekarang# buatlah shortcut Microsoft Word baru dengan cara mengklik kanan mouse
pada desktop dan pilih menu 5/e$6 ' 5Shortcut6. >si 9&ype the location of the item:
dengan 2",-(rogram Files-Microsoft 3ffice-3ffice17-W>/W3)D.BCB2 Dn# kemudian
klik 5/e?t6.
>sikan 9&ype a name for this Shortcut: dengan nama 9Microsoft 3ffice Word 7EEF:.
!apus shortcut yang ada di menu start# kemudian pindahkan shortcut yang baru saa
Anda buat ke menu Start# menggantikan shortcut yang asli.
Setelah itu tutup aplikasi Microsoft $ord. Mulai sekarang bila seseorang ingin
menggunakan Microsoft Word dan membuat dokumen baru# muncullah kotak yang
meminta pass$ord.
Sumber: PCplus
Gambar 1
* Kemudan pada bdang ker|a Word akan terdapat too Stop Recordng dan
Pause Recordng
(hat gambar 2) dan |uga ponter mouse yang berubah men|ad gambar
panah dengan gambar kaset.
Tombo Stop Recordng fungsnya untuk mengakhr proses pembuatan
macro, sedangkan tombo Pause Recordng fungsnya menghentkan
sementara pembuatan macro. Pembuatan macro dapat dan|utkan ag ba
pembaca mengkk tombo Pause Recordng untuk ka yang kedua
Gambar 2
* Sebaga contoh sederhana coba pembaca ketkkan teks berkut n "Saat n
saya sedang bea|ar
membuat macro", kemudan bokah kamat tersebut dan gant men|ad teba
(Bod) atau dengan menekan tombo CTRL+B
* Untuk mengakhr proses pembuatan macro tekanah tombo Stop
Recordng
Seesaah sudah proses pembuatan macro yang sederhana. Untuk
men|aankan macro yang teah d buat akan d|easkan pada bagan
sean|utnya.
Membuat Macro Menggunakan Visual Basic Editor
Membuat macro dengan cara n terasa ebh sut dar cara d atas, karena
harus menguasa bahasa Vsua Basc. Tetap |angan cemas, ba mempea|ar
buku yang membahas Vsua Basc, tentu bsa menguasa Vsua Basc.
Mnmanya untuk keperuan membuat macro daam Word. Adapun cara
untuk membuat macro dengan menggunakan Vsua Basc Edtor adaah
sepert dterangkan pada angkah - angkah berkut n :
* Phah menu Toos > Macro > Macros, atau pembaca dapat |uga
menggunakan shortcut key
ALT+F8. Pada kotak daog Macros yang tamp, ketkkan "Percobaan2" d
kotak Macro name dan
tekan tombo Create
* Pembaca akan dbawa pada |endea apkas Mcrosoft Vsua Basc.
Sean|utnya ketkkan teks
berkut n dantara Sub Percobaan 2 dan End Sub, tepatnya d bawah tusan
yang berwarna
h|au
Seecton.TypeText Text:="Saat n saya sedang bea|ar membuat macro"
Seecton.MoveLeft Unt:=wdCharacter, Count:=42, Extend:=wdExtend
Seecton.Font.Bod = wdTogge
* Kemudan kk menu Fe > Cose and return to Mcrosoft Word atau tekan
tombo keyboard ALT+O
Seesa sudah cara membuat macro yang sederhana dengan menggunakan
Vsua Basc Edtor.
Men|aankan Macro
Untuk dapat men|aankan macro - macro yang teah dbuat kapan sa|a
dbutuhkan, caranya adaah sebaga berkut :
* Kk menu Toos > Macro > Macros sehngga pembaca akan dhadapkan
pada kotak daog Macros sepert gambar d bawah n
Gambar 3
* Sean|utnya pada kotak Macro name, sorotah macro yang akan d|aankan.
Pembaca dapat memh saah satu dar dua macro yang teah dbuat karena
keduanya akan menghaskan has yang sama. Kemudan tekan tombo Run
Hasnya pada bdang ker|a Word akan terdapat tusan teba "Saat n saya
sedang bea|ar membuat macro" yang dtambahkan secara otomats. |ad
pembaca tdak peru repot - repot mengetknya. In berart menghemat
waktu dan mempercepat pembaca daam beker|a.
Mengedt dan Menggant Nama Macro
Macro - macro yang teah pembaca buat tersebut, dapat dgant namanya
atau dedt sesua
kebutuhan. Ka n kta sedkt berman dengan macro yang teah pembaca
buat d atas :
* Kk menu Toos > Macro > Macros, atau dengan shortcut key ALT+F8,
untuk menampkan kotak Macros
* Pada kotak Macro name phah macro Percobaan1, kemudan tekan tombo
Edt
* Pembaca akan dbawa pada |endea Mcrosoft Vsua Basc dengan kursor
berkedp - kedp pada bagan macro Percobaan1. Sebaga contoh mengedt,
ubahah tusan berkut n
Seecton.Font.Bod = wdTogge
men|ad
Seecton.Font.Itac = wdTogge
* Sebaga contoh menggant nama macro, ubahah tusan berkut n
Sub Percobaan2()
men|ad
Sub HepAbout()
* Sean|utnya ph menu Fe > Cose and return to Mcrosoft Word untuk
menutup apkas
Vsua Basc dan kemba ke Word
Dengan demkan Anda teah menggant nama macro Percobaan1 dan
sekagus mengedtnya.
Untuk dapat men|aankan macro tersebut dengan cara yang teah penus
|easkan d atas.
Atau bsa |uga memh menu Hep > About Mcrosoft Word. Dan hasnya
adaah tusan "Saat
n saya sedang bea|ar membuat macro" daam gaya tac bukan ag kotak
About Mcrosoft Word. Ha n antaran Anda teah membuat nama macro
yang sama dengan macro Word command sehngga Mcrosoft Word
mendahuukan macro yang dbuat oeh user. Cara nah yang basanya
dmanfaatkan oeh para pembuat vrus macro.
Menghapus Macro
Ba tdak ag membutuhkan macro - macro tersebut, kta dapat
menghapusnya dengan cara berkut n :
* Ph menu Toos > Macro > Macros sehngga kotak daog Macros tamp.
Pada kotak Macros n
phah nama dokumen dmana macro yang akan pembaca hapus berada.
Ba pembaca akan menghapus kedua macro yang teah dbuat d atas, maka
phah Norma.dot, karena kedua macro tersebut dsmpan dstu.
* Seteah tu sorot nama macro yang akan dhapus, dan tekan tombo Deete.
Kotak daog
konfrmas akan tamp, cukup pembaca kk tombo Yes
* Sorot ag nama macro annya ba pembaca ngn menghapus macro yang
an
* Tekan tombo Cose untuk menutup kotak daog Macros
Membuka Dokumen yang Terakhr dengan Macro
Sebaga contoh yang pertama, marah kta membuat macro n dengan
menggunakan Macro Recorder.
* Pertama ka buka kotak daog Record New Macro dengan memh menu
Toos > Macro > Record New Macro
* D kotak Macro name ber nama dengan "Autoexec", dan tekan tombo Ok
* Seteah ponter mouse berubah men|ad tanda panah dan kaset, kkah
menu Fe kemudan angka satu yang berada d bawah submenu Propertes.
In merupakan daftar dar dokumen yang terakhr ka buka dengan Word
* Terakhr tekan tombo Stop Recordng
Hasnya adaah setap ka Anda men|aankan apkas Word, maka secara
otomats akan dbuka
|uga dokumen yang terakhr ka pembaca buka. Coba pembaca tutup apkas
Word dan |aankan kemba.
Password Untuk Menggunakan Mcrosoft Word
Contoh yang kedua n tdak kaah menarknya dengan yang pertama. Penus
akan men|easkan
bagamana membuat password untuk menggunakan Mcrosoft Word,
sehngga hanya user yang
mengetahu passwordnya yang dapat menggunakan apkas Word. Smak
yah caranya n :
* Terebh dahuu hapus duu macro autoexec pada contoh yang terdahuu,
agar tdak bentrok.
Lhat bahasan mengena menghapus macro
* Ph menu Toos > Macro > Macros. Pada kotak Macro name ketkkan
"autoexec" dan pastkan
pada kotak Macro n terph Norma.dot, kemudan tekan tombo Create
* Sean|utnya masuk ke bagan nt, yatu ketkkan teks berkut n
strCakra = InputBox("Masukkan password duu", "Password")
If strCakra = "Bea|ar" Then
ntDepox = MsgBox("Password Anda Benar")
Appcaton.Actvate
Ese
ntDepox = MsgBox("Password Anda saah, |angan gunakan Word")
Appcaton.Run macroname:="feext"
End If
* Dan terakhr, ph menu Fe > Cose and return to Mcrosoft Word
* Keuar apkas Word
Sekarang ba akan men|aankan apkas Word, maka akan dmnta
password. Cukup ketkkan
kata "Bea|ar" (tanpa kutp dan case senstve). Ba passwordnya saah atau
user menekan
tombo Cance, maka apkas Word akan menutup secara otomats.
)eferensi,
1. http,DDpengetahuan-asikmenarik.blogspot.comD7EEGD11Dmacro-dalam-microsoft-
$ord-apa-dan.html
7. http,DDtekno.kompas.comDreadD7EEGDE8D8ED1E<77711DMelindungi.Word.dengan.(a
ss$ord
Belajar VB-Ecel
Memulai Ma!ro Ecel
Untuk membuat Makro Excel Anda harus membuka sebuah file Microsoft Excel
(contohnya book1.xls). Selanjutnya Anda dapat membuat Makro dengan
beberapa cara :
1. Create Macro (Alt + F8)
ertama! tama buatlah dan bukalah sebuah file Excell bernama
contoh.xls. ada menu Tools" tunjuk Macro lalu tunjuk Macros
" kemud#an kl#k k#r# Mouse (atau tekan Alt $%&)"
seh#ngga muncul tamp#lan sepert# ber#kut"
'et#kan nama Makro yang d#kehendak# pada #s#an Macro name"
contohnya : coba. Maka akan tombol create akan akt#(
tekan tombol create" seh#ngga tamp#lan ber#kut akan muncul
maka Anda telah membuat sebuah Modul Visual Basic Aplication ()*A)
bernama Module1 dan sebuah prosedur )*A bernama coba ().
Anda dapat mem#l#h agar Makro #n# bekerja d# seluruh file Excel yang
terbuka (All Open Workbooks)" hanya pada file yang sedang Anda buka
(This Workbooks)" atau pada (#le contoh.xls" file Excell d#mana Anda
membuat Makro!nya. +engan cara mem#l#h p#l#han tersebut pada Macros
In.
2. Record New Macro
,ara kedua cara pal#ng mudah untuk membuat sebuah macro" sebab
dengan cara #n# k#ta dapat membuat kode visual basic tanpa harus
menul#skannya. ada dasarnya" semua operas# Excell dapat d#lakukan
oleh Macros. -peras# #tu dapat d#catat oleh Macros melalu# Record New
Macros. 'emud#an k#ta dapat mengubah kode!kode )*A yang d#has#lkan
oleh operas# yang tercatat tersebut.
Untuk memula# mencatat Makro maka pada menu Tools" sorot Macro
kemud#an sorot Record New Macros lalu kl#k k#r# Mouse"
seh#ngga tamp#lan ber#kut muncul"
'olom #s#an .Macro name: d#mana Anda meng#s#kan nama Macro.
'olom .!hortcut "e#/ b#la Anda hendak membuat shortcut key dar#
keyboard (Ctrl$ tombol keypad yang Anda #ng#nkan). .!tore Macro $n/
merupakan kolom #s#an untuk menentukan d#mana macro akan d#s#mpan"
p#l#hannya adalah This Workbook" New Workbook dan ersonal Macro
Workbook
. +an kolom .%escr$&t$on/" b#la Anda #ng#n member# penjelasan s#ngkat
mengena# Macro yang akan Anda catat.
Sebaga# contoh" k#ta akan mencatat Macro bernama .o"/" yang mencatat
operas# Excell berupa peng#s#an sel A1 dengan kata .ok/" dan mempunya#
shortcut key Ctrl + '.
ertama!tama lakukan langkah!langkah yang telah d#sebutkan seh#ngga
muncul tamp#lan sebaga# ber#kut"
lalu tekan tombol -'.
encatatan sedang d#lakukan" #s#lah sel A1 dengan kata .ok/" lalu pada
Menu Tools" sorot Macro" kemud#an tekan Stop Recording dan
pencatatan akan berhent#.
Untuk mel#hat kode )*A yang telah tercatat" pada menu Tools sorot
Macro" sorot Macros.
#l#hlah .o"/ pada .Macro name:/ lalu tekan tombol .(d$t/" seh#ngga akan
muncul tamp#lan sebaga# ber#kut"
,obalah merubah Ran)e(*A1) menjad# Ran)e(*A2)" s#mpan dengan
menekan gambar d#sket atau Ctrl + !. 'embal# ke contoh.xls" tekan Ctrl
+ ' dar# !eyboard" dan l#hat apa yang terjad#.
+. ,$sual -as$c (d$tor (Alt +F11)
*#la Anda sudah mengenal pemograman Visual BASIC" maka cara #n#
t#daklah sul#t. *ahkan kadang!kadang Anda akan ser#ng melakukannya.
Untuk menamp#lkan
Visual Basic ditor Anda cukup menekan Alt+F11 maka tamp#lan ber#kut
akan muncul"
selanjutanya Anda b#sa meny#s#pkan Module" ClassModule dan
!ser"or#" dan mula# melakukan pemograman sepert# yang Anda lakukan
d# ,-.. Sepert# Anda l#hat lembar kerja (WorkSheet) pada Excell
merupakan -bjek d# )*E.
Mengendali!an "ange
Mengendal#kan 0ange merupakan hal yang pent#ng dalam pemograman )*E.
Mar# k#ta mula#" pertama buatlah sebuah (#le contoh.xls. 'emud#an buatlah
sebuah makro dengan cara Record New Maro"
ber# nama macro tersebut dengan nama Coba" dan shortkey tombol ' d#
keyboard Anda.
ket#kan kata coba pada range A1
lalu Stop Recording Macro
1#hat has#l pencatatan pada Visual Basic ditor $cell Anda"
kode Macros akan tertul#s pada module1"
"ange#$A%$&'Select
Merupakan per#ntah pada )* Excell untuk mem#l#h ran"e A1" b#la .A1/ d#ubah
menjad# .A2/ maka kata .coba/ akan d#tul#skan pada ran"e A2.
Active"ell.Formula)1"1 = 2coba2
*erart# pada sel akt#( yang telah d#p#l#h (select) rumus (#ormula) .coba/ akan
d#tul#skan. Acti%ecell send#r# menunjuk pada sel d#mana kursor akt#(.

0angka#an kode d# atas dapat d#sederhanakan dengan kode sepert# ber#kut 3
bila dialankan# maka kode ini akan menghasilkan yang sama dengan sebelumnya.

Men))una"an Ran)e den)an Cell
'#ta dapat membuat sebuah range pada Excell sebaga# .t#t#k pusat/ lalu dengan
bantuan Cells(Rowinde$& Colu#nlinde$)." k#ta dapat menempatkan sebuah
n#la# atau rumus d# sek#tar 0ange yang menjad# pusat. Sebaga# contoh tul#skan
kode #n# pada Sub ,oba()
)ange@2D<2A."ells@1# 1A.+alue = 2pusat2
)ange@2D<2A."ells@E# 1A.+alue = 2atas2
)ange@2D<2A."ells@7# 1A.+alue = 2ba$ah2
)ange@2D<2A."ells@1# EA.+alue = 2kanan2
)ange@2D<2A."ells@1# 7A.+alue = 2kiri2
jalankan program" maka has#lnya akan sepert# dem#k#an3
dapat d#l#hat Ran)e(*%/).Cells(101) adalah Range %/ yang menjad# pusat.
*#la 0ange t#dak d#sebutkan maka secara default " 0ange yang menjad# t#t#k
pusat adalah $an"e A1. Anda harus berhat#!hat# ket#ka mem#l#h ran"e%ran"e
yang berada d# tep#" sepert# A1" A4" *1" ,1" dst. Sebab t#dak ada lag# ran"e d#
atas atau d# tep# kanan ran"e%ran"e tersebut.

%ila kita menginginkan sel yang menadi titik pusat adalah sel dimana kursor aktif# maka
kode berikut dapat digunakan
Active"ell.3ffset@E# EA.+alue = 2pusat2
Active"ell.3ffset@E# 1A.+alue = 2kiri2
Active"ell.3ffset@E# -1A.+alue = 2kanan2
Active"ell.3ffset@1# EA.+alue = 2ba$ah2
Active"ell.3ffset@-1# EA.+alue = 2atas2
buka !heet1" p#l#h $an"e +5
lalu tekan Ctrl +'" maka akan menghas#lkan
kemud#an p#l#h range 11/" tekan ,trl$6 maka akan d#has#lkan"
Sela#n dengan kode d#atas" terdapat cara la#n
b#la d#jalankan maka has#l yang sama akan d#dapatkan.
Menunjuk sel pada worksheet tertentu
'arena d#tul#s d# module maka kode!kode d#atas bekerja pada Worksheet yang
akt#(. Art#nya b#la !heet1 yang sedang tebuka maka program aka d#jalankan
pada !heet1. *aga#mana b#la k#ta meng#ng#nkan agar ran"e yang d#tunjuk
berada d# dalam sheet tertentu. ,aranya cukup dengan menul#skan nama
worksheet d# depan ran"e" sebaga# contoh:
Sheet1.)ange@9A1:A.value=:oke:
Akan mengacu pada range A% pada Worksheet S(eet%# bila kita menginginkan agar
range A1 pada S(eet) maka ganti kode sebelumnya dengan,
Sheet7.)ange@9A1:A.value=:oke:
,ara penul#san la#n juga dapat d#lakukan" contohnya:
Set (esan = Sheets@2sheet82A.)ange@2A12A
Set (esan = Sheets@7A.)ange@2A12A

Multiple Range
'#ta sudah mempelajar# baga#mana menujuk sebuah ran"e tunggal sebaga#
sasaran pemograman. Sekarang baga#mana b#la k#ta meng#ng#nkan #ultiple
range.
)ange @9A1,"8:A.value = :oke:
)ange@9A1:#:D;:A.value = 9oke7:
'ode!kode d# atas menunjuk pada multiple ran"e. ada kode pertama yang
d#tunjuk adalah ran"e A1 sampa# C+" sedanga yang kedua adalah A1 sampa#
%2.
Ran)e -ernama
*ag# Anda yang ser#ng menggunakan Excel" mungk#n ser#ng member# nama
pada sebuah ran"e untuk mempermudah pekerjaan. ertanyaan dapatkah
menunjuk ran"e bernama tersebut dalam )* Excel 7 ja8abannya" %A3A455
M#salkan Anda mem#l#k# sebuah ran"e yang bernama .sel/" maka ran"e #n# dapat
d#tunjuk dengan kode Ran)e (*sel)" sebaga# contoh:
)ange @9sel:A.value = :ini sel:
Membuat !ebuah ,ar$abel dar$ Ran)e
Membentuk sebuah 9ar#abel dar# range sangatlah mudah pada )*E. :ujuannya
agar mempermudah dalam pemograman. ertama k#ta harus membuat
d#mens#nya terleb#h dahulu" caranya dengan menul#skan kode sepert# #n#:
Dim (esan As )ange
'emud#an k#ta set 9ar#abel tersebut" sesua# dengan ran"e yang k#ta #ng#nkan 3
Set (esan = )ange@2A12A
Atau
Set (esan = )ange@2A12A."ells@1# 7A
atau
Set (esan = Sheet1.)ange@2A12A
atau
Set (esan = Sheets@2Sheet82A.)ange@2A12A
'emud#an k#ta dapat melakukan operas# ran"e pada 9ar#abel yang telah
d#bentuk. Sebaga# contoh
Dim (esan As )ange
Set (esan = Sheet1.)ange@2A12A
(esan.+alue = 2pesan nih2
(esan@1# 7A.+alue = 2pesan kedua2
$an"e A1 pada !heet1 akan tertul#s .pesan n#h/ dan ran"e A2 akan tertul#s
.pesan kedua/. Sebab 3esan(102) sama dengan
!heet1.Ran)e(*A1).Cells(102).
Sebenarnya k#ta dapat membentuk 9ar#abel tanpa membuat d#mens#nya terleb#h
dahulu" tetap# cara #n# t#dak d#anjurkan karena memboroskan memor#. ,aranya
adalah sepert# dem#k#an:
Set (esan = Sheet1.)ange@2A12A
ada kasus #n# per#ntah!per#ntah ber#kut b#sa bekerja"
(esan.+alue = 2pesan nih2
(esan@1# 7A.+alue = 2pesan kedua2
Melang!a( *ebi( +au(
Di a$al tutorial ini penulis telah menyebutkan bah$a WorkSheet @demikian uga dengan
WorkBookA merupakan sebuah obyek dalam Ms Ecell. Seperti kita ketahui# Visual
Basic merupakan bahasa pemograman yang berorientasi obyek.
ada bab!bab sebelumya sebenarnya k#ta telah membentuk sebuah obyek
bernama $Module%$ yang dapat d#pangg#l dengan menekan ,trl$6" dan
member#nya prosedur bernama $coba$.

erhat#kan ket#ka k#ta menget#k ;Module1;" kemud#an menget#k ;.; Maka akan
muncul tamp#lan sepert# d#atas. Sebuah kotak dengan sebuah gambar ber8arna
h#jau dengan tul#san ;coba;.
ada penjelasan ber#kut" k#ta akan membuat prosedur!prosedur buatan k#ta
send#r# pada Worksheet dan Workbook. Mengapa7 'arena kode!kode program
dalam prosedur yang k#ta buat d# sebuah Worksheet dan Workbook tertentu" hanya
akan bekerja pada Worksheet atau Workbook tersebut. Sedang prosedur yang
tertul#s pada Modules" bekerja pada Worksheet dalam Worbook yang akt#(.
Sebaga# contoh ket#kan kode #n# dalam prosedur Sub Coba#& dalam Module %:
Range("A1").Value= "coba"
lalu buka conto('ls-s(eet%" jalankan program"
buka conto('ls-S(eet)" jalankan program"
kemud#an s(eet,"
'emud#an buat sebuah Workbook baru"
ada Workbook baru" bernama Boo!% #n#" buka S(eet%" jalankan program"
*#la Anda melanjutkan pada boo!%'ls-S(eet) dan S(eet," program yang k#ta buat
pada conto('ls-Module% akan d#kerjakan pada set#ap Worksheet yang akt#("
8alapun Worksheet tersebut berada pada Worbook la#n.
<al #n# akan merepotkan b#la Anda hanya #ng#n program )*E yang d#buat bekerja
pada Worbook tertentu" sedang dalam pekerjaan Anda sehar#!har# Anda harus
membuka banyak Workbook.
3emo)raman Sheet
Untuk memula#" masuklah ke dalam S(eet% dengan cara double klik pada windows
project" tamp#lan ber#kut akan muncul 3
Setelah #tu buatlah sebuah prosedur bernama lembar%"
lalu #s#kan kode ber#kut3
perg# ke Module%" dan #s#kan kode ber#kut
'embal# ke Ms. Excell" buka S(eet%" jalankan program dengan menekan Ctrl - . "
has#lnya adalah 3
<apus kata $lembar%$ d# S(eet%" kemud#an buka S(eet)" kemud#an tekan Cttrl -
." dan has#lnya adalah
range A1 t#dak ter#s# apapun pada S(eet)" bukalah S(eet% dan Anda akan
mendapatkan bah8a pada range A1 terdapat kata $lembar%$.
Membuat Shortkey untu" 3ro)ram &ada Sheet
Untuk membuat Shortcut key dar# program yang telah k#ta buat" maka tekan Alt -
/0" atau menggunakan menu 1ools2Macro2Macros
akan tamp#l
sorot s(eet%'lembar" tekan tombol Option"
pada #s#an Shorcut Key" #s#kan huru( w.
'embal# ke Excell" dan tekan Ctrl - w" l#hat apa yang terjad#.
Men#$s$&"an Control Object &ada WorkSheet
Sepert# )*=" pada )*E terdapat pula obyek!obyek kontrol" sepert# Coand
Button3 !ext Box3 Option Button3 "abel" dan sebaga#nya. :etap#" t#dak semua kontrol
yang ada d# )*= terdapat d# )*A Excel.
ertama!tama k#ta perlu mengh#dupkan Control !oolbox" d#mana terdapat kontrol!
kontrol yang k#ta perlukan. Untuk #tu arahkan kursor ke menu #iew-!oolbars-
Control !oolbox sepert# gambar d#ba8ah"
kemud#an tekan dan akan tamp#l:
:ar#k Box tersebut ke arah ba8ah agar t#dak menghalang# WorkSheet"
Untuk meny#s#pkan kontrol dan merubah!rubah propert#nya" maka k#ta perlu
mengh#dupkan $esign Mode.
tekan gambar seg#t#ga yang mem#l#k# nama $esign Mode" seh#ngga gambar
tersebut terl#hat terang
sebaga# contoh k#ta akan meny#s#pkan Coand Button d# S(eet%"
tekan %con Coand Button pada !oolBox"
lalu kursor akan berubah menjada# tanda ;-$ " gunakan kursor untuk membentuk
sebuah Coand Button dengan cara kl#k k#r# pada ouse.
untuk memasukan kode maka double& clik k#r# ouse pada Coand Button
seh#nnga #isual Basic Editor muncul
masukkan kode yang d##ng#nkan ke dalam
(rivate Sub "ommand%utton1H"lick@A
Bnd Sub
CommandButton%4Clic! berart# program akan d#jalankan pada saat Coand
Button d#tekan. Sepert# terl#hat bah8a prosedur #n# terdapat d# dalam Sheet'"
WorkSheet d#mana Coand Button d#s#s#pkan.
*er#kut adalah salah satu contoh program
kembal# ke Ecel dan ma#tkan $esign Mode dengan cara menekannya" seh#ngga
tamp#lannya t#dak terang lag#"
lalu tekan Coand Button" maka akan tamp#l :
'#ta dapat mengakses propert# Coand Button" dengan cara menyalakan
kembal# $esign Mode lalu kl#k kanan Coand Button"
tekan (roperties maka akan tamp#l"
d# s#s# sebelah k#r# akan tamp#l Windows (roperties.
'#ta dapat merubah tamp#lan (Caption) pada Coand Button dengan cara
merubah #s#an Caption d# (roperties"
atau dengan menged#t Coand Button"
b#la d#tekan" akan tamp#l
lalu rubahalah Caption!nya"
Men))una"an UserForm
Untuk menggunakan )ser*or" pertama s#s#pkan dahulu obyek #n# kedalam
project k#ta.
tamp#lan ber#kut akan muncul
selanjutnya Anda dapat melakukan langkah!langkah pemograman sepert# d#
)*=.
ada contoh ber#kut k#ta akan meny#s#pakan sebuah CoandButton dan sebuah
!extBox ke dalam (orm k#ta. >s# dar# sebuah range (k#ta p#l#h range A1) d# salah satu
WorkSheet (pada contoh #n# k#ta p#l#h Sheet') akan sama dengan #s# !extBox ket#ka
CoandButton d#tekan.
ertama!tama k#ta s#s#pkan sebuah CoandButton dan !extBox pada )ser*or"
lalu kl#k dua kal# CoandButton" h#ngga tamp#lan ber#kut muncul
#s#kan kode ber#kut
)ange@2A12A.+alue = &e?t%o?1.+alue

Selanjutnya kembal# ke Sheet1 (pada )#sual *as# Ed#tor)" #s#kan kode be#rkut d#
rosedur ;lembar1;"
5ser/orm%'S(ow
'ode d# atas memer#ntahkan agar )ser*or' muncul
kembal# ke Excell" dan tekan Ctrl-w untuk menjalankan rosedur $lembar%$.
#s# !extBox dengan kata $suda($ lalu tekan CoandButton'"
Sebaga# catatan" karena )ser*or muncul maka Anda t#dak dapat menggunakan
WorkSheet pada Excel. *#la Anda meng#ng#nkan agar" b#sa beral#h ke WorkSheet"
maka kode ber#kut dapat d#gunakan (hanya bekerja pada Excell 4??? ke atas).
0serForm1.Sho$ vbModeless
*#la program kembal# d#jalankan
maka Anda dapat beral#h dar# )ser*or ke WorkSheet.
Beberapa Conto( 6ode
Auto "un
Ada beberapa cara untuk membuat macros yang k#ta buat berjalan secara
otomat#s ket#ka pertama kal# membuka workbook. @ang pertama adalah Auto
&pen Method" yang d#letakkan d# modules" kedua adalah Workbook &pen
Method" yang d#letakkan d# pada obyek Workbook (l#hat penjelasan pada langkah
A). +ua ,ontoh kode ber#kut akan menamp#lkan pesan .h#/ ket#ka Borkbook
pertama kal# d#buka.
Sub Auto_Open( )
Msgbox hi
n! Sub
"#i$ate Sub %o#&boo&_Open( )
Msgbox hi
n! Sub
Meng(itung "ows3 Columns dan S(eet
'ode ber#kut d#gunakan untuk mengh#tung berapa jumlah rows (bar#s) atau
columns(kolom) yang telah k#ta sorot dengan kursor.
Sub 'itung( )
hitung_ba#is = Selection.Ro(s.)ount
hitung_&olo* = Selection.)olu*ns.)ount
Msg+ox hitung_ba#is , " " , hitung_&olo*
n! Sub
Sub hitung_sheet( )
hitung_sheet = Application.Sheets.)ount
Msgbox hitung_sheet
n! Sub
Meng-!opi "ange
,ontoh ber#kut akan meng!kop# ran"e A1 sampa# AA ke +1 sampa# +A
Sub -opi_Range( )
Range (A1.A/).)op0 1estination.=Range(11.1/)
n! Sub
Wa!tu Se!arang
,ontoh ber#kut akan menamp#lkan 8aktu pada saat #n#
Sub se&a#ang( )
Range (A1)= 2o(
n! Sub
Mengeta(ui Posisi Sel 7ang Sedang A!tif
Sub posisi( )
ba#is = Acti$e)ell.Ro(
&olo* = Acti$e)ell.)olu*n
Msgbox ba#is , 3 , &olo*
n! Sub
Meng(apus Baris 7ang 6osong
Sub hapus_ba#is_&osong( )
Rng = Selection.Ro(s.)ount
Acti$e)ell.O44set(53 5).Select
6o# i = 1 7o Rng
84 Acti$e)ell.Value = "" 7hen
Selection.nti#eRo(.1elete
lse
Acti$e)ell.O44set(13 5).Select
n! 84
2ext 8
n! Sub
Menebal"an dan Mewarna$ 1uru6 ("ont)
,ontoh ber#kut akan menebalkan dan member# 8arna merah pada huru( d#mana
sel sedang akt#(.
Sub tebal_*e#ah( )
Selection.6ont.+ol! = 7#ue
Selection.6ont.)olo#8n!ex = /
n! Sub
Mengirim!an Wor!boo! melalui Email
Sub e*ail( )
Acti$e%o#&boo&.Sen!Mail #ecipients.= excel9ahoo.c
n! Sub
/ungsi Ecel
Menggunakan (ungs# ba8aan Excel dalam )*E hamp#r sama dengan
menggunakannya dalam Excel. M#sal (ungs# round untuk membulatkan sebuah
angka" dalam spreadsheet akan terl#hat sepert# #n#
= #oun!(1.:/;<3 :)
+alam )*E Anda cukup menggunakan Application kemud#an d#susul (ungs# yang
akan d#paka#.
Sub bulat( )
Acti$e)ell = Application.Roun!(Acti$e)ell3 :)
n! Sub
Meng(apus 8ama-8ama "ange
"ontoh berikut akan menghapus semua nama-nama range di dalam $orkbook Anda
Sub hapusHnamaHrange@ A
1i* 2a*e= As 2a*e
6o# ach 2a*e= 8n 2a*es
Acti$e%o#&boo&.2a*es(2a*e=.2a*e).1elete
2ext 2a*e=
n! Sub
*a7ar Ber!edip
rogram dalam macros yang sedang berjalan dapat membuat layar berked#p!
ked#p" untuk menghent#kannya Anda dapat meny#s#pkan kode ber#kut.
Application.Sc#een>p!ating = 6alse
Menuju "ange 1ertentu
Untuk menuju suatu ran"e tertentu" kode!kode ber#kut dapat d#gunakan.
Application.?oto Re4e#ence.=A1
Atau"
Range(A1).Select
Menuju S(eet tertentu
Sedangkan untuk menuju worksheet tertentu" gunakan kode!kode ber#kut.
Sheets(1).Select
Atau
Sheet1.Select
Untuk menuju 'heet terdepan (nomor 1)
Sheet(coba).Select
Untuk menuju 'heet bernama .coba/
Men7embun7i!an Wor!S(eet
'ode ber#kut ber(ungs# untuk menyembuny#kan Sheet1
Sheet1.Visible = xlSheetVe#0'i!!en
engguna t#dak dapat membuka sheet yang telah d#sembuny#kan dengan cara
#n#" hanya dengan kode )*E sheet dapat d#buka kembal#.
9nput Bo
'ode ber#kut berguna untuk memunculkan (nput Box
8nput+ox(Masu&&an 2a*a)
Men7isip!an Baris dan 6olom
'ode ber#kut akan meny#s#pkan bar#s d#atas ran"e A1"
Range(A1).Select
Selection.nti#eRo(.8nse#t
Sedang yang ber#kut akan meny#s#pkan satu kolom d#samp#ng k#r# ran"e A1"
Range(A1).Select
Selection.nti#e)olu*n.8nse#t
Mengatur 5lang 5!uran "ange
Selection.Resi@e(<3<).Select
Memberi 8ama "ange
Selection.2a*e = na*a
Men7impan /ile
'ode ber#kut berguna untuk meny#mpan (#le tanpa member# nama"
Acti$e%o#&boo&.Sa$e
Sedangkan b#la Anda hendak member# nama ('aveAs)" gunakan kode ber#kut"
Acti$e%o#&boo&.Sa$eAs 6ilena*e.=).Acoba.xls
Penjadwalan
'adang!kadang k#ta hendak menjad8alkan sebuah tugas kepada Excel"
contohnya meny#mpan (#le pada jam!jam tertentu. )*E dapat melakukannya
dengan menggunakan (ungs# A&&l$cat$on.7n4$me. Sebaga# contoh" kode
d#ba8ah #n# akan menjalankan prosedur Si*pan( ) pada jam 14:?? dan 1=:??"
prosedur Si*pan( ) send#r# ber#s# per#ntah untuk meny#mpan (#le"
Sub tugas()
Application.On7i*e 7i*eValue("1:.55.55")3 "Si*pan"
Application.On7i*e 7i*eValue("1;.55.55")3 "Si*pan"
n! Sub
Sub Si*pan()
Acti$e%o#&boo&.Sa$e
n! Sub
*#la Anda hendak merubah jamnya" m#ssal jam 1?:?A:?5" maka rubah
7i*eValue menjad# &ime+alue@91E,E8,E<:A.
Sedangkan b#la Anda hendak melakukannya satu jam setelah prosedur tugas( )
d#jalankan maka rubahlah kodenya sepert# dem#k#an"
Sub tugas()
Application.3n&ime /o$ I &ime+alue@2E1,EE,EE2A# 2Simpan2
n! Sub
erhat#kan penambahan kata .Co8/. 'ode!kode d# atas bekerja b#la d#s#mpan
dalam module" bula Anda #ng#n meny#mpannya d# dalam Sheet1 (atau worksheet
manapun)" maka rubahlah .S#mpan/ menjad# Sheet1.Si*pan

You might also like