Macro Dalam Word Dan Excel

download Macro Dalam Word Dan Excel

of 52

description

4''''

Transcript of Macro Dalam Word Dan Excel

  • 5/24/2018 Macro Dalam Word Dan Excel

    1/52

    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 menjadi satu

    perintah. Sehingga pekerjaan yang berulang - ulang dapat dilakukan secara otomatis dan

    mudah. Hal ini akan sangat menguntungkan ketimbang melakukan perintah - perintah

    secara satu per satu dan berulang - ulang. Contoh yang sederhana misalnya pembaca

    sering menuliskan suatu kata atau kalimat yang sama secara terus - menerus, maka yang

    semacam ini dapat dibuatkan macronya sehingga pekerjaan mengetik menjadi lebih cepat

    dan mudah serta tidak membuang - buang waktu.

    Macro Bawaan Microsoft Word

    Sebenarnya semua perintah - perintah yang ada dalam Word merupakan macro. Misalnya

    ketika pembaca memilih menu File kemudian Save, maka Word akan menjalankan macro

    yang bernama FileSave. Begitu juga ketika pembaca memilih menu Help kemudian

    About Microsoft Word, maka akan dijalankan macro HelpAbout sehingga tampil kotak

    About Microsoft Word. Cobalah jalankan aplikasi Word kemudian pilihlah menu Tools >

    Macro > Macros, maka akan dihadapkan pada kotak dialog macros. Selanjutnya pada

    kotak Macro in pilihlah Word commands, sehingga akan terlihat nama - nama macro

    yang ada di Word. Pilihlah HelpAbout kemudian tekan tombol Run.

    Bila seorang user membuat sebuah macro dengan nama yang sama dengan nama macro

    yang telah ada dalam Word commands, maka Microsoft Word akan mendahulukan macroyang dibuat oleh user.

    Membuat Macro

    Ada dua cara untuk membuat macro; menggunakan macro recorder atau menggunakan

    editor Visual Basic yang telah disertakan saat pembaca menginstall Microsoft Word.

    Membuat Macro Menggunakan Macro Recorder

  • 5/24/2018 Macro Dalam Word Dan Excel

    2/52

    Cara ini merupakan cara yang paling mudah dalam membuat macro. Cukup mengikuti

    langkah - langkah berikut ini :

    * Jalankan program Microsoft Word* Setelah jendela Microsoft Word tampil pilihlah menu Tools > Macro > Record New

    Macro

    * User dihadapkan pada kotak dialog Record Macro seperti pada gambar 1. Beri nama

    untuk macro yang akan user buat pada kotak Macro Name, misalnya "Percobaan1". Pada

    kotak Store macro in, dapat menentukan dokumen yang akan digunakan untuk

    menyimpan macro. Bila memilih Normal.dot, berarti macro akan disimpan di file

    Normal.dot dan akan tetap ada setiap kali akan menjalankan Word. Bila memilih yang

    kedua yaitu pada dokumen yang sedang dibuat, maka macro hanya akan ada pada

    dokumen tersebut. Bila membuka dokumen yang lain atau membuat dokumen yang baru,

    maka macro yang akan dibuat ini tidak akan ada. Dalam hal ini penulis memilihNormal.dot. Setelah itu tekan tombol Ok

    Melindungi Word dengan Password

    Bila komputer Anda digunakan beramai-ramai oleh banyak orang, Anda harus

    melindungi aplikasi yang tidak boleh dipakai oleh semua orang. Nah, ada cara sederhanaagar orang lain tidak dapat menggunakan aplikasi Word seenaknya.

    Kita bisa membuat sebuah aplikasi di mana bila seseorang ingin menggunakan aplikasiMicrosoft Word mereka harus memasukkan sebuah password yang telah kita tentukan.Caranya begini:1. Buka aplikasi Microsoft Word Anda, kemudian pilih tab [View].

    2. Pada pita di bawahnya, klik tombol [Macros].

    3. Setelah muncul jendela Macros, isi Macro name dengan nama AutoNew. Perlu

  • 5/24/2018 Macro Dalam Word Dan Excel

    3/52

    diperhatikan, nama makro harus disimpan dengan nama AutoNew.

    4. Klik [Create] untuk mulai membuat makro.

    5. Selanjutnya, akan muncul jendela Microsoft Visual Basic editor. Pada jendela tersebut,ketikkan skrip di bawah ini.

    pass = InputBox("Masukkan password Anda.")If pass = "rahasia" ThenEndElseMsgBox ("Password yang Anda masukkan salah.")ActiveDocument.CloseEnd If

    Pada skrip di atas, Anda dapat mengganti rahasia dengan password yang akan Andainginkan.Simpan makro Anda kemudian tutup aplikasi Microsoft Word.

    Sekarang, buatlah shortcut Microsoft Word baru dengan cara mengklik kanan mousepada desktop dan pilih menu [New] > [Shortcut]. Isi Type the location of the itemdengan "C:-Program Files-Microsoft Office-Office12-WINWORD.EXE" /n, kemudianklik [Next].

    Isikan Type a name for this Shortcut dengan nama Microsoft Office Word 2007.Hapus shortcut yang ada di menu start, kemudian pindahkan shortcut yang baru sajaAnda buat ke menu Start, menggantikan shortcut yang asli.

    Setelah itu tutup aplikasi Microsoft word. Mulai sekarang bila seseorang inginmenggunakan Microsoft Word dan membuat dokumen baru, muncullah kotak yangmeminta password.

    Sumber: PCplus

    Gambar 1

  • 5/24/2018 Macro Dalam Word Dan Excel

    4/52

    * Kemudian pada bidang kerja Word akan terdapat tool Stop Recording dan Pause Recording

    (lihat gambar 2) dan juga pointer mouse yang berubah menjadi gambar panah dengan gambar

    kaset.

    Tombol Stop Recording fungsinya untuk mengakhiri proses pembuatan macro, sedangkan

    tombol Pause Recording fungsinya menghentikan sementara pembuatan macro. Pembuatan

    macro dapat dilanjutkan lagi bila pembaca mengklik tombol Pause Recording untuk kali yang

    kedua

    Gambar 2

    * Sebagai contoh sederhana coba pembaca ketikkan teks berikut ini "Saat ini saya sedang belajar

    membuat macro", kemudian bloklah kalimat tersebut dan ganti menjadi tebal (Bold) atau

    dengan menekan tombol CTRL+B

    * Untuk mengakhiri proses pembuatan macro tekanlah tombol Stop Recording

    Selesailah sudah proses pembuatan macro yang sederhana. Untuk menjalankan macro yang

    telah di buat akan dijelaskan pada bagian selanjutnya.

    Membuat Macro Menggunakan Visual Basic Editor

    Membuat macro dengan cara ini terasa lebih sulit dari cara di atas, karena harus menguasai

    bahasa Visual Basic. Tetapi jangan cemas, bila mempelajari buku yang membahas Visual Basic,

    tentu bisa menguasai Visual Basic.

    Minimalnya untuk keperluan membuat macro dalam Word. Adapun cara untuk membuat macro

    dengan menggunakan Visual Basic Editor adalah seperti diterangkan pada langkah - langkah

    berikut ini :

    * Pilihlah menu Tools > Macro > Macros, atau pembaca dapat juga menggunakan shortcut key

    ALT+F8. Pada kotak dialog Macros yang tampil, ketikkan "Percobaan2" di kotak Macro name dan

  • 5/24/2018 Macro Dalam Word Dan Excel

    5/52

    tekan tombol Create

    * Pembaca akan dibawa pada jendela aplikasi Microsoft Visual Basic. Selanjutnya ketikkan teks

    berikut ini diantara Sub Percobaan 2 dan End Sub, tepatnya di bawah tulisan yang berwarna

    hijau

    Selection.TypeText Text:="Saat ini saya sedang belajar membuat macro"

    Selection.MoveLeft Unit:=wdCharacter, Count:=42, Extend:=wdExtend

    Selection.Font.Bold = wdToggle

    * Kemudian klik menu File > Close and return to Microsoft Word atau tekan tombol keyboard

    ALT+Q

    Selesai sudah cara membuat macro yang sederhana dengan menggunakan Visual Basic Editor.

    Menjalankan Macro

    Untuk dapat menjalankan macro - macro yang telah dibuat kapan saja dibutuhkan, caranya

    adalah sebagai berikut :

    * Klik menu Tools > Macro > Macros sehingga pembaca akan dihadapkan pada kotak dialog

    Macros seperti gambar di bawah ini

    Gambar 3

    * Selanjutnya pada kotak Macro name, sorotlah macro yang akan dijalankan. Pembaca dapat

    memilih salah satu dari dua macro yang telah dibuat karena keduanya akan menghasilkan hasil

    yang sama. Kemudian tekan tombol Run Hasilnya pada bidang kerja Word akan terdapat tulisan

    tebal "Saat ini saya sedang belajar membuat macro" yang ditambahkan secara otomatis. Jadi

    pembaca tidak perlu repot - repot mengetiknya. Ini berarti menghemat waktu dan

    mempercepat pembaca dalam bekerja.

    Mengedit dan Mengganti Nama Macro

    Macro - macro yang telah pembaca buat tersebut, dapat diganti namanya atau diedit sesuai

    kebutuhan. Kali ini kita sedikit bermain dengan macro yang telah pembaca buat di atas :

    * Klik menu Tools > Macro > Macros, atau dengan shortcut key ALT+F8, untuk menampilkan

    kotak Macros

    * Pada kotak Macro name pilihlah macro Percobaan1, kemudian tekan tombol Edit

    * Pembaca akan dibawa pada jendela Microsoft Visual Basic dengan kursor berkedip - kedip

    pada bagian macro Percobaan1. Sebagai contoh mengedit, ubahlah tulisan berikut ini

  • 5/24/2018 Macro Dalam Word Dan Excel

    6/52

    Selection.Font.Bold = wdToggle

    menjadi

    Selection.Font.Italic = wdToggle

    * Sebagai contoh mengganti nama macro, ubahlah tulisan berikut ini

    Sub Percobaan2()

    menjadi

    Sub HelpAbout()* Selanjutnya pilih menu File > Close and return to Microsoft Word untuk menutup aplikasi

    Visual Basic dan kembali ke Word

    Dengan demikian Anda telah mengganti nama macro Percobaan1 dan sekaligus mengeditnya.

    Untuk dapat menjalankan macro tersebut dengan cara yang telah penulis jelaskan di atas.

    Atau bisa juga memilih menu Help > About Microsoft Word. Dan hasilnya adalah tulisan "Saat

    ini saya sedang belajar membuat macro" dalam gaya italic bukan lagi kotak About Microsoft

    Word. Hal ini lantaran Anda telah membuat nama macro yang sama dengan macro Word

    command sehingga Microsoft Word mendahulukan macro yang dibuat oleh user. Cara inilah

    yang biasanya dimanfaatkan oleh para pembuat virus macro.

    Menghapus Macro

    Bila tidak lagi membutuhkan macro - macro tersebut, kita dapat menghapusnya dengan cara

    berikut ini :

    * Pilih menu Tools > Macro > Macros sehingga kotak dialog Macros tampil. Pada kotak Macros in

    pilihlah nama dokumen dimana macro yang akan pembaca hapus berada. Bila pembaca akan

    menghapus kedua macro yang telah dibuat di atas, maka pilihlah Normal.dot, karena kedua

    macro tersebut disimpan disitu.

    * Setelah itu sorot nama macro yang akan dihapus, dan tekan tombol Delete. Kotak dialog

    konfirmasi akan tampil, cukup pembaca klik tombol Yes

    * Sorot lagi nama macro lainnya bila pembaca ingin menghapus macro yang lain

    * Tekan tombol Close untuk menutup kotak dialog Macros

    Membuka Dokumen yang Terakhir dengan Macro

    Sebagai contoh yang pertama, marilah kita membuat macro ini dengan menggunakan Macro

    Recorder.

    * Pertama kali buka kotak dialog Record New Macro dengan memilih menu Tools > Macro >

  • 5/24/2018 Macro Dalam Word Dan Excel

    7/52

    Record New Macro

    * Di kotak Macro name beri nama dengan "Autoexec", dan tekan tombol Ok

    * Setelah pointer mouse berubah menjadi tanda panah dan kaset, kliklah menu File kemudian

    angka satu yang berada di bawah submenu Properties. Ini merupakan daftar dari dokumen yang

    terakhir kali buka dengan Word

    * Terakhir tekan tombol Stop Recording

    Hasilnya adalah setiap kali Anda menjalankan aplikasi Word, maka secara otomatis akan dibuka

    juga dokumen yang terakhir kali pembaca buka. Coba pembaca tutup aplikasi Word dan

    jalankan kembali.

    Password Untuk Menggunakan Microsoft Word

    Contoh yang kedua ini tidak kalah menariknya dengan yang pertama. Penulis akan menjelaskan

    bagaimana membuat password untuk menggunakan Microsoft Word, sehingga hanya user yang

    mengetahui passwordnya yang dapat menggunakan aplikasi Word. Simak yah caranya ini :

    * Terlebih dahulu hapus dulu macro autoexec pada contoh yang terdahulu, agar tidak bentrok.

    Lihat bahasan mengenai menghapus macro

    * Pilih menu Tools > Macro > Macros. Pada kotak Macro name ketikkan "autoexec" dan pastikan

    pada kotak Macro in terpilih Normal.dot, kemudian tekan tombol Create

    * Selanjutnya masuk ke bagian inti, yaitu ketikkan teks berikut ini

    strCakra = InputBox("Masukkan password dulu", "Password")If strCakra = "Belajar" Then

    intDepox = MsgBox("Password Anda Benar")

    Application.Activate

    Else

    intDepox = MsgBox("Password Anda salah, jangan gunakan Word")

    Application.Run macroname:="fileexit"

    End If

    * Dan terakhir, pilih menu File > Close and return to Microsoft Word

    * Keluar aplikasi Word

    Sekarang bila akan menjalankan aplikasi Word, maka akan dimintai password. Cukup ketikkan

    kata "Belajar" (tanpa kutip dan case sensitive). Bila passwordnya salah atau user menekan

    tombol Cancel, maka aplikasi Word akan menutup secara otomatis.

    Referensi:

  • 5/24/2018 Macro Dalam Word Dan Excel

    8/52

    1. http://pengetahuan-asikmenarik.blogspot.com/2009/11/macro-dalam-microsoft-

    word-apa-dan.html

    2. http://tekno.kompas.com/read/2009/03/30/10522211/Melindungi.Word.dengan.Pa

    ssword

    Belajar VB-Excel

    Memulai Makro Excel

    Untuk membuat Makro Excel Anda harus membuka sebuah file Microsoft Excel(contohnya book1.xls). Selanjutnya Anda dapat membuat Makro denganbeberapa cara :

    1. Create Macro (Alt + F8)

    Pertama- tama buatlah dan bukalah sebuah file Excell bernama

    contoh.xls. Pada menu Tools, tunjuk Macrolalu tunjuk Macros

    , kemudian klik kiri Mouse (atau tekan Alt +F8),

    sehingga muncul tampilan seperti berikut,

  • 5/24/2018 Macro Dalam Word Dan Excel

    9/52

    Ketikan nama Makro yang dikehendaki pada isian Macro name,

    contohnya : coba. Maka akan tombol createakan aktif

    tekan tombol create, sehingga tampilan berikut akan muncul

  • 5/24/2018 Macro Dalam Word Dan Excel

    10/52

    maka Anda telah membuat sebuah Modul Visual Basic Aplication (VBA)

    bernama Module1dan sebuah prosedur VBA bernama coba ().

    Anda dapat memilih agar Makro ini bekerja di seluruh file Excel yang

    terbuka (All Open Workbooks), hanya pada fileyang sedang Anda buka

    (This Workbooks), atau pada file contoh.xls, file Excell dimana Anda

    membuat Makro-nya. Dengancara memilih pilihan tersebut pada Macros

    In.

    2. Record New Macro

    Cara kedua cara paling mudah untuk membuat sebuah macro, sebab

    dengan cara ini kita dapat membuat kode visual basic tanpa harus

  • 5/24/2018 Macro Dalam Word Dan Excel

    11/52

    menuliskannya. Pada dasarnya, semua operasi Excell dapat dilakukan

    oleh Macros. Operasi itu dapat dicatat oleh Macrosmelalui Record New

    Macros. Kemudian kita dapat mengubah kode-kode VBA yangdihasilkan

    oleh operasi yang tercatat tersebut.

    Untuk memulai mencatat Makro maka pada menu Tools, sorot Macro

    kemudian sorot Record New Macroslalu klik kiri Mouse,

    sehingga tampilan berikut muncul,

    Kolom isian Macro name: dimana Anda mengisikan nama Macro.

    Kolom Shortcut key bila Anda hendak membuat shortcut key dari

    keyboard (Ctrl+ tombol keypad yang Anda inginkan). Store Macro in

  • 5/24/2018 Macro Dalam Word Dan Excel

    12/52

    merupakan kolom isian untuk menentukan dimana macroakan disimpan,

    pilihannya adalah This Workbook, New Workbook dan Personal Macro

    Workbook

    . Dan kolom Description, bila Anda ingin memberi penjelasan singkat

    mengenai Macroyang akan Anda catat.

    Sebagai contoh, kita akan mencatat Macrobernama ok , yang mencatat

    operasi Excell berupa pengisian sel A1 dengan kata ok, dan mempunyai

    shortcut keyCtrl + q.

    Pertama-tama lakukan langkah-langkah yang telah disebutkan sehingga

    muncul tampilan sebagai berikut,

    lalu tekan tombol OK.

    Pencatatan sedang dilakukan, isilah sel A1 dengan kata ok, lalu pada

    Menu Tools, sorot Macro, kemudian tekan Stop Recording dan

    pencatatan akan berhenti.

  • 5/24/2018 Macro Dalam Word Dan Excel

    13/52

    Untuk melihat kode VBA yang telah tercatat, pada menu Tools sorot

    Macro, sorot Macros.

    Pilihlah ok pada Macro name: lalu tekan tombol Edit, sehingga akan

    muncul tampilan sebagai berikut,

  • 5/24/2018 Macro Dalam Word Dan Excel

    14/52

    Cobalah merubah Range(A1 ) menjadi Range(A2 ), simpan denganmenekan gambar disket atau Ctrl + S. Kembali ke contoh.xls, tekan Ctrl

    + qdari Keyboard, dan lihat apa yang terjadi.

    3. Visual Basic Editor (Alt +F11)

    Bila Anda sudah mengenal pemograman Visual BASIC, maka cara ini

    tidaklah sulit. Bahkan kadang-kadang Anda akan sering melakukannya.

    Untuk menampilkan

    Visual Basic EditorAnda cukup menekanAlt+F11maka tampilan berikut

    akan muncul,

    selanjutanya Anda bisa menyisipkan Module, ClassModule dan

    UserForm, dan mulai melakukan pemograman seperti yang Anda lakukan

  • 5/24/2018 Macro Dalam Word Dan Excel

    15/52

    di VB6. Seperti Anda lihat lembar kerja (WorkSheet) pada Excell

    merupakan Objek di VBE.

    Mengendalikan Range

    Mengendalikan Range merupakan hal yang penting dalam pemograman VBE.

    Mari kita mulai, pertama buatlah sebuah file contoh.xls. Kemudian buatlah

    sebuah makro dengan cara Record New Maro,

    beri nama macro tersebut dengan nama Coba, dan shortkey tombol q di

    keyboardAnda.

  • 5/24/2018 Macro Dalam Word Dan Excel

    16/52

    ketikan kata coba pada rangeA1

    lalu Stop Recording Macro

  • 5/24/2018 Macro Dalam Word Dan Excel

    17/52

    Lihat hasil pencatatan pada Visual Basic EditorExcellAnda,

    kode Macrosakan tertulis pada module1,

  • 5/24/2018 Macro Dalam Word Dan Excel

    18/52

    Range("A1").Select

    Merupakan perintah pada VB Excell untuk memilih rangeA1, bila A1 diubah

    menjadi A4 maka kata coba akan dituliskan pada rangeA4.

    ActiveCell.FormulaR1C1 = "coba"

    Berarti pada sel aktif yang telah dipilih (select) rumus (Formula) coba akan

    dituliskan.Activecell sendiri menunjuk pada sel dimana kursor aktif.

    Rangkaian kode di atas dapat disederhanakan dengan kode seperti berikut ;

  • 5/24/2018 Macro Dalam Word Dan Excel

    19/52

    bila dijalankan, maka kode ini akan menghasilkan yang sama dengan sebelumnya.

    Menggunakan Rangedengan Cell

    Kita dapat membuat sebuah range pada Excell sebagai titik pusat lalu dengan

    bantuan Cells(Rowindex, Columnlindex)., kita dapat menempatkan sebuah

    nilai atau rumus di sekitar Rangeyang menjadi pusat. Sebagai contoh tuliskan

    kode ini pada Sub Coba()

    Range("D5").Cells(1, 1).Value = "pusat"

    Range("D5").Cells(0, 1).Value = "atas"

    Range("D5").Cells(2, 1).Value = "bawah"

    Range("D5").Cells(1, 0).Value = "kanan"

    Range("D5").Cells(1, 2).Value = "kiri"

  • 5/24/2018 Macro Dalam Word Dan Excel

    20/52

    jalankan program, maka hasilnya akan seperti demikian;

    dapat dilihatRange( D5 ).Cells(1,1)adalahRangeD5yang menjadi pusat.

    Bila Range tidak disebutkan maka secara default , Range yang menjadi titik

    pusat adalah Range A1. Anda harus berhati-hati ketika memilih range-range

    yang berada di tepi, seperti A1, A2, B1, C1, dst. Sebab tidak ada lagi rangedi

    atas atau di tepi kanan range-rangetersebut.

  • 5/24/2018 Macro Dalam Word Dan Excel

    21/52

    Bila kita menginginkan sel yang menjadi titik pusat adalah sel dimana kursor aktif, maka

    kode berikut dapat digunakan

    ActiveCell.Offset(0, 0).Value = "pusat"

    ActiveCell.Offset(0, 1).Value = "kiri"

    ActiveCell.Offset(0, -1).Value = "kanan"

    ActiveCell.Offset(1, 0).Value = "bawah"

    ActiveCell.Offset(-1, 0).Value = "atas"

    buka Sheet1, pilihRangeD5

  • 5/24/2018 Macro Dalam Word Dan Excel

    22/52

    lalu tekan Ctrl +q, maka akan menghasilkan

    kemudian pilih rangeH15, tekan Ctrl+q maka akan dihasilkan,

  • 5/24/2018 Macro Dalam Word Dan Excel

    23/52

    Selain dengan kode diatas, terdapat cara lain

    bila dijalankan maka hasil yang sama akan didapatkan.

    Menunjuk sel pada worksheettertentu

    Karena ditulis di modulemaka kode-kode diatas bekerja pada Worksheet yang

    aktif. Artinya bila Sheet1 yang sedang tebuka maka program aka dijalankan

    pada Sheet1. Bagaimana bila kita menginginkan agar range yang ditunjuk

    berada di dalam sheet tertentu. Caranya cukup dengan menuliskan nama

    worksheetdi depan range, sebagai contoh:

  • 5/24/2018 Macro Dalam Word Dan Excel

    24/52

    Sheet1.Range(A1).value=oke

    Akan mengacu pada rangeA1pada WorksheetSheet1, bila kita menginginkan agar

    rangeA1 pada Sheet2maka ganti kode sebelumnya dengan:

    Sheet2.Range(A1).value=oke

    Cara penulisan lain juga dapat dilakukan, contohnya:

    Set Pesan = Sheets("sheet3").Range("A1")

    Set Pesan = Sheets(2).Range("A1")

    Multiple Range

    Kita sudah mempelajari bagaimana menujuk sebuah range tunggal sebagaisasaran pemograman. Sekarang bagaimana bila kita menginginkan multiple

    range.

    Range (A1:C3).value = oke

    Range(A1,D4).value = oke2

    Kode-kode di atas menunjuk pada multiple range. Pada kode pertama yang

    ditunjuk adalah rangeA1sampai C3, sedanga yang kedua adalah A1sampai

    D4.

    Range Bernama

    Bagi Anda yang sering menggunakan Excel, mungkin sering memberi nama

    pada sebuah range untuk mempermudah pekerjaan. Pertanyaan dapatkah

    menunjuk rangebernama tersebut dalam VB Excel ? jawabannya, DAPAT!!

  • 5/24/2018 Macro Dalam Word Dan Excel

    25/52

    Misalkan Anda memiliki sebuah rangeyang bernama sel, maka rangeini dapat

    ditunjuk dengan kodeRange(sel), sebagai contoh:

    Range (sel).value = ini sel

    MembuatSebuahVariabeldariRange

    Membentuk sebuah variabel dari range sangatlah mudah pada VBE. Tujuannya

    agar mempermudah dalam pemograman. Pertama kita harus membuat

    dimensinya terlebih dahulu, caranya dengan menuliskan kode seperti ini:

    Dim Pesan As Range

    Kemudian kita set variabel tersebut, sesuai dengan rangeyang kita inginkan ;

    Set Pesan = Range("A1")

    Atau

    Set Pesan = Range("A1").Cells(1, 2)

    atau

    Set Pesan = Sheet1.Range("A1")

    atau

    Set Pesan = Sheets("Sheet3").Range("A1")

    Kemudian kita dapat melakukan operasi range pada variabel yang telah

    dibentuk. Sebagai contoh

    Dim Pesan As Range

    Set Pesan = Sheet1.Range("A1")

    Pesan.Value = "pesan nih"

    Pesan(1, 2).Value = "pesan kedua"

    RangeA1 pada Sheet1 akan tertulis pesan nih dan rangeA2 akan tertulis

    pesan kedua. Sebab Pesan(1,2) sama dengan

    Sheet1.Range( A1 ).Cells (1,2).

  • 5/24/2018 Macro Dalam Word Dan Excel

    26/52

    Sebenarnya kita dapat membentuk variabel tanpa membuat dimensinya terlebih

    dahulu, tetapi cara ini tidak dianjurkan karena memboroskan memori. Caranya

    adalah seperti demikian:

    Set Pesan = Sheet1.Range("A1")

    Pada kasus ini perintah-perintah berikut bisa bekerja,

    Pesan.Value = "pesan nih"

    Pesan(1, 2).Value = "pesan kedua"

    Melangkah Lebih Jauh

    Di awal tutorial ini penulis telah menyebutkan bahwa WorkSheet(demikian juga denganWorkBook) merupakan sebuah obyek dalam Ms Excell. Seperti kita ketahui, VisualBasicmerupakan bahasa pemograman yang berorientasi obyek.

    Pada bab-bab sebelumya sebenarnya kita telah membentuk sebuah obyekbernama "Module1" yang dapat dipanggil dengan menekan Ctrl+q, danmemberinya prosedur bernama "coba".

    Perhatikan ketika kita mengetik "Module1", kemudian mengetik "." Maka akanmuncul tampilan seperti diatas. Sebuah kotak dengan sebuah gambar berwarnahijau dengan tulisan "coba".

    Pada penjelasan berikut, kita akan membuat prosedur-prosedur buatan kitasendiri pada Worksheet dan Workbook. Mengapa? Karena kode-kode programdalam prosedur yang kita buat di sebuah Worksheetdan Workbooktertentu, hanyaakan bekerja pada Worksheet atau Workbook tersebut. Sedang prosedur yangtertulis padaModules, bekerja pada Worksheetdalam Worbookyang aktif.

  • 5/24/2018 Macro Dalam Word Dan Excel

    27/52

    Sebagai contoh ketikan kode ini dalam prosedur Sub Coba()dalam Module 1:

    Range( "A1") . Val ue= "coba"

    lalu buka contoh.xls-sheet1, jalankan program,

    buka contoh.xls-Sheet2, jalankan program,

  • 5/24/2018 Macro Dalam Word Dan Excel

    28/52

    kemudian sheet3,

    Kemudian buat sebuah Workbookbaru,

  • 5/24/2018 Macro Dalam Word Dan Excel

    29/52

    Pada Workbookbaru, bernama Book1ini, buka Sheet1, jalankan program,

    Bila Anda melanjutkan pada book1.xls-Sheet2dan Sheet3, program yang kita buatpada contoh.xls-Module1 akan dikerjakan pada setiap Worksheet yang aktif,walapun Worksheettersebut berada pada Worbooklain.

    Hal ini akan merepotkan bila Anda hanya ingin program VBE yang dibuat bekerjapada Worbook tertentu, sedang dalam pekerjaan Anda sehari-hari Anda harusmembuka banyak Workbook.

    Pemograman Sheet

    Untuk memulai, masuklah ke dalam Sheet1dengan cara double klik pada windowsproject, tampilan berikut akan muncul ;

  • 5/24/2018 Macro Dalam Word Dan Excel

    30/52

    Setelah itu buatlah sebuah prosedur bernama lembar1,

    lalu isikan kode berikut;

  • 5/24/2018 Macro Dalam Word Dan Excel

    31/52

    pergi ke Module1, dan isikan kode berikut

    Kembali keMs. Excell, buka Sheet1, jalankan program dengan menekan Ctrl + q,hasilnya adalah ;

    Hapus kata "lembar1"di Sheet1, kemudian buka Sheet2, kemudian tekan Cttrl +q, dan hasilnya adalah

  • 5/24/2018 Macro Dalam Word Dan Excel

    32/52

    range A1 tidak terisi apapun pada Sheet2, bukalah Sheet1 dan Anda akanmendapatkan bahwa pada rangeA1 terdapat kata "lembar1".

    Membuat Shortkeyuntuk Program pada Sheet

    Untuk membuat Shortcut keydari program yang telah kita buat, maka tekan Alt +F8, atau menggunakan menu ToolsMacroMacros

  • 5/24/2018 Macro Dalam Word Dan Excel

    33/52

    akan tampil

    sorot sheet1.lembar, tekan tombol Option,

    pada isian Shorcut Key, isikan huruf w.

    Kembali keExcell, dan tekan Ctrl + w, lihat apa yang terjadi.

    Menyisipkan Control Objectpada WorkSheetSeperti VB6, pada VBE terdapat pula obyek-obyek kontrol, seperti CommandButton, Text Box, Option Button,Label, dan sebagainya. Tetapi, tidak semua kontrolyang ada di VB6 terdapat di VBA Excel.

    Pertama-tama kita perlu menghidupkan Control Toolbox, dimana terdapat kontrol-kontrol yang kita perlukan. Untuk itu arahkan kursor ke menu View-Toolbars-Control Toolboxseperti gambar dibawah,

  • 5/24/2018 Macro Dalam Word Dan Excel

    34/52

    kemudian tekan dan akan tampil:

    TarikBoxtersebut ke arah bawah agar tidak menghalangi WorkSheet,

    Untuk menyisipkan kontrol dan merubah-rubah propertinya, maka kita perlumenghidupkanDesign Mode.

  • 5/24/2018 Macro Dalam Word Dan Excel

    35/52

    tekan gambar segitiga yang memiliki nama Design Mode, sehingga gambartersebut terlihat terang

    sebagai contoh kita akan menyisipkan Command Buttondi Sheet1,

  • 5/24/2018 Macro Dalam Word Dan Excel

    36/52

    tekanIcon Command Buttonpada ToolBox,

    lalu kursor akan berubah menjadai tanda "+", gunakan kursor untuk membentuksebuah Command Buttondengan cara klik kiri pada mouse.

  • 5/24/2018 Macro Dalam Word Dan Excel

    37/52

    untuk memasukan kode maka double- clik kiri mouse pada Command Buttonsehinnga Visual Basic Editormuncul

    masukkan kode yang diinginkan ke dalam

    Private Sub CommandButton1_Click()

    End Sub

    CommandButton1_Click berarti program akan dijalankan pada saat CommandButton ditekan. Seperti terlihat bahwa prosedur ini terdapat di dalam Sheet1,WorkSheetdimana Command Button disisipkan.

    Berikut adalah salah satu contoh program

    kembali ke Exceldan maitkan Design Modedengan cara menekannya, sehinggatampilannya tidak terang lagi,

  • 5/24/2018 Macro Dalam Word Dan Excel

    38/52

    lalu tekan Command Button, maka akan tampil :

    Kita dapat mengakses properti Command Button, dengan cara menyalakankembaliDesign Mode lalu klik kanan Command Button,

  • 5/24/2018 Macro Dalam Word Dan Excel

    39/52

    tekan Propertiesmaka akan tampil,

    di sisi sebelah kiri akan tampil Windows Properties.

    Kita dapat merubah tampilan (Caption) pada Command Button dengan caramerubah isian Captiondi Properties,

    atau dengan mengedit Command Button,

  • 5/24/2018 Macro Dalam Word Dan Excel

    40/52

    bila ditekan, akan tampil

    lalu rubahalah Caption-nya,

  • 5/24/2018 Macro Dalam Word Dan Excel

    41/52

    Menggunakan UserForm

    Untuk menggunakan UserForm, pertama sisipkan dahulu obyek ini kedalamprojectkita.

    tampilan berikut akan muncul

    selanjutnya Anda dapat melakukan langkah-langkah pemograman seperti di

    VB6.Pada contoh berikut kita akan menyisipakan sebuah CommandButtondan sebuahTextBoxke dalam form kita. Isi dari sebuah range(kita pilih rangeA1) di salah satuWorkSheet(pada contoh ini kita pilih Sheet1) akan sama dengan isi TextBoxketikaCommandButtonditekan.

    Pertama-tama kita sisipkan sebuah CommandButtondan TextBoxpada UserForm,

  • 5/24/2018 Macro Dalam Word Dan Excel

    42/52

    lalu klik dua kaliCommandButton, hingga tampilan berikut muncul

    isikan kode berikut

    Range("A1").Value = TextBox1.Value

  • 5/24/2018 Macro Dalam Word Dan Excel

    43/52

    Selanjutnya kembali ke Sheet1 (pada Visual Basi Editor), isikan kode beirkut diProsedur "lembar1",

    UserForm1.Show

    Kode di atas memerintahkan agar UserForm1muncul

    kembali keExcell, dan tekan Ctrl+wuntuk menjalankan Prosedur "lembar1".

  • 5/24/2018 Macro Dalam Word Dan Excel

    44/52

    isi TextBoxdengan kata "sudah"lalu tekan CommandButton1,

    Sebagai catatan, karena UserFormmuncul maka Anda tidak dapat menggunakanWorkSheetpada Excel. Bila Anda menginginkan agar, bisa beralih ke WorkSheet,maka kode berikut dapat digunakan (hanya bekerja pada Excell 2000 ke atas).

    UserForm1.Show vbModeless

  • 5/24/2018 Macro Dalam Word Dan Excel

    45/52

    Bila program kembali dijalankan

    maka Anda dapat beralih dari UserForm ke WorkSheet.

    Beberapa Contoh Kode

    Auto Run

    Ada beberapa cara untuk membuat macros yang kita buat berjalan secara

    otomatis ketika pertama kali membuka workbook. Yang pertama adalah Auto

    Open Method, yang diletakkan di modules, kedua adalah Workbook Open

    Method, yang diletakkan di pada obyek Workbook(lihat penjelasan pada langkah

    3). Dua Contoh kode berikut akan menampilkan pesan hi ketika Workbook

    pertama kali dibuka.

    Sub Aut o_Open( )

    Msgbox hi

    End Sub

    Pr i vat e Sub Workbook_Open( )

    Msgbox hi

    End Sub

  • 5/24/2018 Macro Dalam Word Dan Excel

    46/52

    Menghitung Rows, Columns dan Sheet

    Kode berikut digunakan untuk menghitung berapa jumlah rows (baris) atau

    columns(kolom) yang telah kita sorot dengan kursor.

    Sub Hi t ung( )

    hi t ung_bar i s = Sel ect i on. Rows. Count

    hi t ung_kol om = Sel ect i on. Col umns. Count

    MsgBox hi t ung_bar i s & " " & hi t ung_kol om

    End Sub

    Sub hi t ung_sheet ( )

    hi t ung_sheet = Appl i cat i on. Sheet s. Count

    Msgbox hi t ung_sheet

    End Sub

    Meng-kopi Range

    Contoh berikut akan meng-kopi rangeA1 sampai A3 ke D1 sampai D3

    Sub Kopi _Range( )

    Range ( A1: A3) . Copy Dest i nat i on: =Range( D1: D3)

    End Sub

    Waktu Sekarang

    Contoh berikut akan menampilkan waktu pada saat ini

    Sub sekarang( )

    Range ( A1) = Now

  • 5/24/2018 Macro Dalam Word Dan Excel

    47/52

    End Sub

    Mengetahui Posisi Sel yang Sedang Aktif

    Sub posi si ( )

    bar i s = Act i veCel l . Row

    kol om = Act i veCel l . Col umn

    Msgbox bar i s & , & kol om

    End Sub

    Menghapus Baris yang Kosong

    Sub hapus_bar i s_kosong( )

    Rng = Sel ect i on. Rows. Count

    Act i veCel l . Of f set ( 0, 0) . Sel ect

    For i = 1 To Rng

    I f Act i veCel l . Val ue = " " Then

    Sel ect i on. Ent i r eRow. Del et e

    El se

    Act i veCel l . Of f set ( 1, 0) . Sel ect

    End I f

    Next I

    End Sub

    Menebalkan dan Mewarnai Huruf (Font)

    Contoh berikut akan menebalkan dan memberi warna merah pada huruf dimana

    sel sedang aktif.

  • 5/24/2018 Macro Dalam Word Dan Excel

    48/52

    Sub tebal _merah( )

    Sel ect i on. Font . Bol d = Tr ue

    Sel ect i on. Font . Col or I ndex = 3

    End Sub

    Mengirimkan Workbook melalui Email

    Sub emai l ( )

    Act i veWorkbook. SendMai l r eci pi ent s: = excel @ahoo. c

    End Sub

    Fungsi Excel

    Menggunakan fungsi bawaan Excel dalam VBE hampir sama dengan

    menggunakannya dalam Excel. Misal fungsi round untuk membulatkan sebuahangka, dalam spreadsheetakan terlihat seperti ini

    = r ound( 1. 2367, 2)

    Dalam VBE Anda cukup menggunakanApplicationkemudian disusul fungsi yang

    akan dipakai.

    Sub bul at ( )

    Act i veCel l = Appl i cat i on. Round( Act i veCel l , 2)

    End Sub

    Menghapus Nama-Nama Range

    Contoh berikut akan menghapus semua nama-nama rangedi dalam workbook Anda

    Sub hapus_nama_range( )

  • 5/24/2018 Macro Dalam Word Dan Excel

    49/52

    Di m NameX As Name

    For Each NameX I n Names

    Act i veWor kbook. Names( NameX. Name) . Del et e

    Next NameX

    End Sub

    Layar Berkedip

    Program dalam macros yang sedang berjalan dapat membuat layar berkedip-

    kedip, untuk menghentikannya Anda dapat menyisipkan kode berikut.

    Appl i cat i on. Scr eenUpdat i ng = Fal se

    Menuju Range Tertentu

    Untuk menuju suatu rangetertentu, kode-kode berikut dapat digunakan.

    Appl i cat i on. Got o Ref er ence: =A1

    Atau,

    Range( A1) . Sel ect

    Menuju Sheet tertentu

    Sedangkan untuk menuju worksheettertentu, gunakan kode-kode berikut.

    Sheet s( 1) . Sel ect

    Atau

    Sheet 1. Sel ect

    Untuk menuju Sheetterdepan (nomor 1)

  • 5/24/2018 Macro Dalam Word Dan Excel

    50/52

    Sheet ( coba) . Sel ect

    Untuk menuju Sheetbernama coba

    Menyembunyikan WorkSheet

    Kode berikut berfungsi untuk menyembunyikan Sheet1

    Sheet 1. Vi si bl e = xl SheetVer yHi dden

    Pengguna tidak dapat membuka sheet yang telah disembunyikan dengan cara

    ini, hanya dengan kode VBE sheetdapat dibuka kembali.

    Input Box

    Kode berikut berguna untuk memunculkan Input Box

    I nputBox( Masukkan Nama)

    Menyisipkan Baris dan Kolom

    Kode berikut akan menyisipkan baris diatas rangeA1,

    Range( A1) . Sel ect

    Sel ecti on. Ent i r eRow. I nser t

    Sedang yang berikut akan menyisipkan satu kolom disamping kiri rangeA1,

    Range( A1) . Sel ect

    Sel ect i on. Ent i r eCol umn. I nser t

    Mengatur Ulang Ukuran Range

    Sel ecti on. Resi ze( 7, 7) . Sel ect

  • 5/24/2018 Macro Dalam Word Dan Excel

    51/52

    Memberi Nama Range

    Sel ect i on. Name = nama

    Menyimpan File

    Kode berikut berguna untuk menyimpan file tanpa memberi nama,

    Act i veWorkbook. Save

    Sedangkan bila Anda hendak memberi nama (SaveAs), gunakan kode berikut,

    Act i veWorkbook. SaveAs Fi l ename: =C: \ coba. xl s

    Penjadwalan

    Kadang-kadang kita hendak menjadwalkan sebuah tugas kepada Excel,

    contohnya menyimpan file pada jam-jam tertentu. VBE dapat melakukannyadengan menggunakan fungsi Appl ication.OnTime. Sebagai contoh, kode

    dibawah ini akan menjalankan prosedur Si mpan( ) pada jam 12:00 dan 16:00,

    prosedur Si mpan( ) sendiri berisi perintah untuk menyimpan file,

    Sub t ugas( )

    Appl i cat i on. OnTi me Ti meVal ue( "12: 00: 00") , "Si mpan"

    Appl i cat i on. OnTi me Ti meVal ue( "16: 00: 00") , "Si mpan"

    End Sub

    Sub Si mpan( )

    Act i veWorkbook. Save

    End Sub

    Bila Anda hendak merubah jamnya, missal jam 10:03:05, maka rubah

    Ti meVal uemenjadi TimeValue(10:03:05).

  • 5/24/2018 Macro Dalam Word Dan Excel

    52/52

    Sedangkan bila Anda hendak melakukannya satu jam setelah prosedur tugas( )

    dijalankan maka rubahlah kodenya seperti demikian,

    Sub t ugas( )

    Application.OnTime Now + TimeValue("01:00:00"), "Simpan"

    End Sub

    Perhatikan penambahan kata Now. Kode-kode di atas bekerja bila disimpan

    dalam module, bula Anda ingin menyimpannya di dalam Sheet1 (atau worksheet

    manapun), maka rubahlah Simpan menjadi Sheet 1. Si mpan