Download - Macro Excel

Transcript
  • 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 mengarahkannyauntuk berbagai macam kepentingan dalam koridor otomatisasi. Dari yang sederhanasampai yang mampu berreplikasi seperti virus macro.

    Apa Sih macro itu ?

    Macro merupakan kumpulan perintah - perintah dalam Word yang dirangkai menjadi satuperintah. Sehingga pekerjaan yang berulang - ulang dapat dilakukan secara otomatis danmudah. Hal ini akan sangat menguntungkan ketimbang melakukan perintah - perintahsecara satu per satu dan berulang - ulang. Contoh yang sederhana misalnya pembacasering menuliskan suatu kata atau kalimat yang sama secara terus - menerus, maka yangsemacam ini dapat dibuatkan macronya sehingga pekerjaan mengetik menjadi lebih cepatdan mudah serta tidak membuang - buang waktu.

    Macro Bawaan Microsoft Word

    Sebenarnya semua perintah - perintah yang ada dalam Word merupakan macro. Misalnyaketika pembaca memilih menu File kemudian Save, maka Word akan menjalankan macroyang bernama FileSave. Begitu juga ketika pembaca memilih menu Help kemudianAbout Microsoft Word, maka akan dijalankan macro HelpAbout sehingga tampil kotakAbout Microsoft Word. Cobalah jalankan aplikasi Word kemudian pilihlah menu Tools >Macro > Macros, maka akan dihadapkan pada kotak dialog macros. Selanjutnya padakotak Macro in pilihlah Word commands, sehingga akan terlihat nama - nama macroyang ada di Word. Pilihlah HelpAbout kemudian tekan tombol Run.

    Bila seorang user membuat sebuah macro dengan nama yang sama dengan nama macroyang 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 menggunakaneditor Visual Basic yang telah disertakan saat pembaca menginstall Microsoft Word.

    Membuat Macro Menggunakan Macro Recorder

  • Cara ini merupakan cara yang paling mudah dalam membuat macro. Cukup mengikutilangkah - langkah berikut ini :* Jalankan program Microsoft Word* Setelah jendela Microsoft Word tampil pilihlah menu Tools > Macro > Record NewMacro* User dihadapkan pada kotak dialog Record Macro seperti pada gambar 1. Beri namauntuk macro yang akan user buat pada kotak Macro Name, misalnya "Percobaan1". Padakotak Store macro in, dapat menentukan dokumen yang akan digunakan untukmenyimpan macro. Bila memilih Normal.dot, berarti macro akan disimpan di fileNormal.dot dan akan tetap ada setiap kali akan menjalankan Word. Bila memilih yangkedua yaitu pada dokumen yang sedang dibuat, maka macro hanya akan ada padadokumen 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 harusmelindungi 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

  • 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: PCplusGambar 1

  • * 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 gambarkaset.Tombol Stop Recording fungsinya untuk mengakhiri proses pembuatan macro, sedangkantombol Pause Recording fungsinya menghentikan sementara pembuatan macro. Pembuatanmacro dapat dilanjutkan lagi bila pembaca mengklik tombol Pause Recording untuk kali yangkedua

    Gambar 2

    * Sebagai contoh sederhana coba pembaca ketikkan teks berikut ini "Saat ini saya sedang belajarmembuat macro", kemudian bloklah kalimat tersebut dan ganti menjadi tebal (Bold) ataudengan menekan tombol CTRL+B* Untuk mengakhiri proses pembuatan macro tekanlah tombol Stop RecordingSelesailah sudah proses pembuatan macro yang sederhana. Untuk menjalankan macro yangtelah 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 menguasaibahasa 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 macrodengan menggunakan Visual Basic Editor adalah seperti diterangkan pada langkah - langkahberikut ini :* Pilihlah menu Tools > Macro > Macros, atau pembaca dapat juga menggunakan shortcut keyALT+F8. Pada kotak dialog Macros yang tampil, ketikkan "Percobaan2" di kotak Macro name dan

  • tekan tombol Create* Pembaca akan dibawa pada jendela aplikasi Microsoft Visual Basic. Selanjutnya ketikkan teksberikut ini diantara Sub Percobaan 2 dan End Sub, tepatnya di bawah tulisan yang berwarnahijau

    Selection.TypeText Text:="Saat ini saya sedang belajar membuat macro"Selection.MoveLeft Unit:=wdCharacter, Count:=42, Extend:=wdExtendSelection.Font.Bold = wdToggle

    * Kemudian klik menu File > Close and return to Microsoft Word atau tekan tombol keyboardALT+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, caranyaadalah sebagai berikut :* Klik menu Tools > Macro > Macros sehingga pembaca akan dihadapkan pada kotak dialogMacros seperti gambar di bawah ini

    Gambar 3

    * Selanjutnya pada kotak Macro name, sorotlah macro yang akan dijalankan. Pembaca dapatmemilih salah satu dari dua macro yang telah dibuat karena keduanya akan menghasilkan hasilyang sama. Kemudian tekan tombol Run Hasilnya pada bidang kerja Word akan terdapat tulisantebal "Saat ini saya sedang belajar membuat macro" yang ditambahkan secara otomatis. Jadipembaca tidak perlu repot - repot mengetiknya. Ini berarti menghemat waktu danmempercepat pembaca dalam bekerja.

    Mengedit dan Mengganti Nama Macro

    Macro - macro yang telah pembaca buat tersebut, dapat diganti namanya atau diedit sesuaikebutuhan. 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 menampilkankotak Macros* Pada kotak Macro name pilihlah macro Percobaan1, kemudian tekan tombol Edit* Pembaca akan dibawa pada jendela Microsoft Visual Basic dengan kursor berkedip - kedippada bagian macro Percobaan1. Sebagai contoh mengedit, ubahlah tulisan berikut ini

  • 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 aplikasiVisual 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 "Saatini saya sedang belajar membuat macro" dalam gaya italic bukan lagi kotak About MicrosoftWord. Hal ini lantaran Anda telah membuat nama macro yang sama dengan macro Wordcommand sehingga Microsoft Word mendahulukan macro yang dibuat oleh user. Cara inilahyang biasanya dimanfaatkan oleh para pembuat virus macro.

    Menghapus Macro

    Bila tidak lagi membutuhkan macro - macro tersebut, kita dapat menghapusnya dengan caraberikut ini :* Pilih menu Tools > Macro > Macros sehingga kotak dialog Macros tampil. Pada kotak Macros inpilihlah nama dokumen dimana macro yang akan pembaca hapus berada. Bila pembaca akanmenghapus kedua macro yang telah dibuat di atas, maka pilihlah Normal.dot, karena keduamacro tersebut disimpan disitu.* Setelah itu sorot nama macro yang akan dihapus, dan tekan tombol Delete. Kotak dialogkonfirmasi 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 MacroRecorder.* Pertama kali buka kotak dialog Record New Macro dengan memilih menu Tools > Macro >

  • 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 kemudianangka satu yang berada di bawah submenu Properties. Ini merupakan daftar dari dokumen yangterakhir kali buka dengan Word* Terakhir tekan tombol Stop Recording

    Hasilnya adalah setiap kali Anda menjalankan aplikasi Word, maka secara otomatis akan dibukajuga dokumen yang terakhir kali pembaca buka. Coba pembaca tutup aplikasi Word danjalankan kembali.

    Password Untuk Menggunakan Microsoft Word

    Contoh yang kedua ini tidak kalah menariknya dengan yang pertama. Penulis akan menjelaskanbagaimana membuat password untuk menggunakan Microsoft Word, sehingga hanya user yangmengetahui 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 pastikanpada 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" ThenintDepox = MsgBox("Password Anda Benar")Application.ActivateElseintDepox = 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 ketikkankata "Belajar" (tanpa kutip dan case sensitive). Bila passwordnya salah atau user menekantombol Cancel, maka aplikasi Word akan menutup secara otomatis.

    Referensi:

  • 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.Password

    Belajar VB-ExcelMemulai 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 bernamacontoh.xls. Pada menu Tools, tunjuk Macro lalu tunjuk Macros

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

    sehingga muncul tampilan seperti berikut,

  • Ketikan nama Makro yang dikehendaki pada isian Macro name,contohnya : coba. Maka akan tombol create akan aktif

    tekan tombol create, sehingga tampilan berikut akan muncul

  • maka Anda telah membuat sebuah Modul Visual Basic Aplication (VBA)bernama Module1 dan sebuah prosedur VBA bernama coba ().

    Anda dapat memilih agar Makro ini bekerja di seluruh file Excel yangterbuka (All Open Workbooks), hanya pada file yang sedang Anda buka(This Workbooks), atau pada file contoh.xls, file Excell dimana Andamembuat Makro-nya. Dengan cara memilih pilihan tersebut pada MacrosIn.

    2. Record New Macro

    Cara kedua cara paling mudah untuk membuat sebuah macro, sebabdengan cara ini kita dapat membuat kode visual basic tanpa harus

  • menuliskannya. Pada dasarnya, semua operasi Excell dapat dilakukanoleh Macros. Operasi itu dapat dicatat oleh Macros melalui Record NewMacros. Kemudian kita dapat mengubah kode-kode VBA yang dihasilkanoleh operasi yang tercatat tersebut.

    Untuk memulai mencatat Makro maka pada menu Tools, sorot Macrokemudian sorot Record New Macros lalu 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 darikeyboard (Ctrl+ tombol keypad yang Anda inginkan). Store Macro in

  • merupakan kolom isian untuk menentukan dimana macro akan disimpan,pilihannya adalah This Workbook, New Workbook dan Personal MacroWorkbook

    . Dan kolom Description, bila Anda ingin memberi penjelasan singkatmengenai Macro yang akan Anda catat.

    Sebagai contoh, kita akan mencatat Macro bernama ok, yang mencatatoperasi Excell berupa pengisian sel A1 dengan kata ok, dan mempunyaishortcut key Ctrl + q.

    Pertama-tama lakukan langkah-langkah yang telah disebutkan sehinggamuncul tampilan sebagai berikut,

    lalu tekan tombol OK.

    Pencatatan sedang dilakukan, isilah sel A1 dengan kata ok, lalu padaMenu Tools, sorot Macro, kemudian tekan Stop Recording danpencatatan akan berhenti.

  • Untuk melihat kode VBA yang telah tercatat, pada menu Tools sorotMacro, sorot Macros.

    Pilihlah ok pada Macro name: lalu tekan tombol Edit, sehingga akanmuncul tampilan sebagai berikut,

  • Cobalah merubah Range(A1) menjadi Range(A2), simpan denganmenekan gambar disket atau Ctrl + S. Kembali ke contoh.xls, tekan Ctrl+ q dari Keyboard, dan lihat apa yang terjadi.

    3. Visual Basic Editor (Alt +F11)

    Bila Anda sudah mengenal pemograman Visual BASIC, maka cara initidaklah sulit. Bahkan kadang-kadang Anda akan sering melakukannya.Untuk menampilkan

    Visual Basic Editor Anda cukup menekan Alt+F11 maka tampilan berikutakan muncul,

    selanjutanya Anda bisa menyisipkan Module, ClassModule danUserForm, dan mulai melakukan pemograman seperti yang Anda lakukan

  • di VB6. Seperti Anda lihat lembar kerja (WorkSheet) pada Excellmerupakan Objek di VBE.

    Mengendalikan Range

    Mengendalikan Range merupakan hal yang penting dalam pemograman VBE.Mari kita mulai, pertama buatlah sebuah file contoh.xls. Kemudian buatlahsebuah makro dengan cara Record New Maro,

    beri nama macro tersebut dengan nama Coba, dan shortkey tombol q dikeyboard Anda.

  • ketikan kata coba pada range A1

    lalu Stop Recording Macro

  • Lihat hasil pencatatan pada Visual Basic Editor Excell Anda,

    kode Macros akan tertulis pada module1,

  • Range("A1").SelectMerupakan perintah pada VB Excell untuk memilih range A1, bila A1 diubahmenjadi A4 maka kata coba akan dituliskan pada range A4.

    ActiveCell.FormulaR1C1 = "coba"

    Berarti pada sel aktif yang telah dipilih (select) rumus (Formula) coba akandituliskan. Activecell sendiri menunjuk pada sel dimana kursor aktif.

    Rangkaian kode di atas dapat disederhanakan dengan kode seperti berikut ;

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

    Menggunakan Range dengan Cell

    Kita dapat membuat sebuah range pada Excell sebagai titik pusat lalu denganbantuan Cells(Rowindex, Columnlindex)., kita dapat menempatkan sebuahnilai atau rumus di sekitar Range yang menjadi pusat. Sebagai contoh tuliskankode 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"

  • jalankan program, maka hasilnya akan seperti demikian;

    dapat dilihat Range(D5).Cells(1,1) adalah Range D5 yang menjadi pusat.

    Bila Range tidak disebutkan maka secara default , Range yang menjadi titikpusat adalah Range A1. Anda harus berhati-hati ketika memilih range-rangeyang berada di tepi, seperti A1, A2, B1, C1, dst. Sebab tidak ada lagi range diatas atau di tepi kanan range-range tersebut.

  • Bila kita menginginkan sel yang menjadi titik pusat adalah sel dimana kursor aktif, makakode 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, pilih Range D5

  • lalu tekan Ctrl +q, maka akan menghasilkan

    kemudian pilih range H15, tekan Ctrl+q maka akan dihasilkan,

  • Selain dengan kode diatas, terdapat cara lain

    bila dijalankan maka hasil yang sama akan didapatkan.

    Menunjuk sel pada worksheet tertentu

    Karena ditulis di module maka kode-kode diatas bekerja pada Worksheet yangaktif. Artinya bila Sheet1 yang sedang tebuka maka program aka dijalankanpada Sheet1. Bagaimana bila kita menginginkan agar range yang ditunjukberada di dalam sheet tertentu. Caranya cukup dengan menuliskan namaworksheet di depan range, sebagai contoh:

  • Sheet1.Range(A1).value=oke

    Akan mengacu pada range A1 pada Worksheet Sheet1, bila kita menginginkan agarrange A1 pada Sheet2 maka 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 multiplerange.

    Range (A1:C3).value = oke

    Range(A1,D4).value = oke2

    Kode-kode di atas menunjuk pada multiple range. Pada kode pertama yangditunjuk adalah range A1 sampai C3, sedanga yang kedua adalah A1 sampaiD4.

    Range Bernama

    Bagi Anda yang sering menggunakan Excel, mungkin sering memberi namapada sebuah range untuk mempermudah pekerjaan. Pertanyaan dapatkahmenunjuk range bernama tersebut dalam VB Excel ? jawabannya, DAPAT!!

  • Misalkan Anda memiliki sebuah range yang bernama sel, maka range ini dapatditunjuk dengan kode Range (sel), sebagai contoh:

    Range (sel).value = ini sel

    Membuat Sebuah Variabel dari Range

    Membentuk sebuah variabel dari range sangatlah mudah pada VBE. Tujuannyaagar mempermudah dalam pemograman. Pertama kita harus membuatdimensinya terlebih dahulu, caranya dengan menuliskan kode seperti ini:

    Dim Pesan As Range

    Kemudian kita set variabel tersebut, sesuai dengan range yang 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 telahdibentuk. Sebagai contoh

    Dim Pesan As Range

    Set Pesan = Sheet1.Range("A1")

    Pesan.Value = "pesan nih"

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

    Range A1 pada Sheet1 akan tertulis pesan nih dan range A2 akan tertulispesan kedua. Sebab Pesan(1,2) sama denganSheet1.Range(A1).Cells(1,2).

  • Sebenarnya kita dapat membentuk variabel tanpa membuat dimensinya terlebihdahulu, tetapi cara ini tidak dianjurkan karena memboroskan memori. Caranyaadalah 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, VisualBasic merupakan 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 Worksheet dan Workbook tertentu, hanyaakan bekerja pada Worksheet atau Workbook tersebut. Sedang prosedur yangtertulis pada Modules, bekerja pada Worksheet dalam Worbook yang aktif.

  • Sebagai contoh ketikan kode ini dalam prosedur Sub Coba() dalam Module 1:Range("A1").Value= "coba"

    lalu buka contoh.xls-sheet1, jalankan program,

    buka contoh.xls-Sheet2, jalankan program,

  • kemudian sheet3,

    Kemudian buat sebuah Workbook baru,

  • Pada Workbook baru, bernama Book1 ini, buka Sheet1, jalankan program,

    Bila Anda melanjutkan pada book1.xls-Sheet2 dan Sheet3, program yang kita buatpada contoh.xls-Module1 akan dikerjakan pada setiap Worksheet yang aktif,walapun Worksheet tersebut berada pada Worbook lain.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 SheetUntuk memulai, masuklah ke dalam Sheet1 dengan cara double klik pada windowsproject, tampilan berikut akan muncul ;

  • Setelah itu buatlah sebuah prosedur bernama lembar1,

    lalu isikan kode berikut;

  • pergi ke Module1, dan isikan kode berikut

    Kembali ke Ms. 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

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

    Membuat Shortkey untuk Program pada SheetUntuk membuat Shortcut key dari program yang telah kita buat, maka tekan Alt +F8, atau menggunakan menu ToolsMacroMacros

  • akan tampil

    sorot sheet1.lembar, tekan tombol Option,

    pada isian Shorcut Key, isikan huruf w.Kembali ke Excell, dan tekan Ctrl + w, lihat apa yang terjadi.

    Menyisipkan Control Object pada 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 Toolbox seperti gambar dibawah,

  • kemudian tekan dan akan tampil:

    Tarik Box tersebut ke arah bawah agar tidak menghalangi WorkSheet,

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

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

    sebagai contoh kita akan menyisipkan Command Button di Sheet1,

  • tekan Icon Command Button pada ToolBox,

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

  • untuk memasukan kode maka double- clik kiri mouse pada Command Buttonsehinnga Visual Basic Editor muncul

    masukkan kode yang diinginkan ke dalamPrivate Sub CommandButton1_Click()

    End Sub

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

    Berikut adalah salah satu contoh program

    kembali ke Excel dan maitkan Design Mode dengan cara menekannya, sehinggatampilannya tidak terang lagi,

  • lalu tekan Command Button, maka akan tampil :

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

  • tekan Properties maka akan tampil,

    di sisi sebelah kiri akan tampil Windows Properties.Kita dapat merubah tampilan (Caption) pada Command Button dengan caramerubah isian Caption di Properties,

    atau dengan mengedit Command Button,

  • bila ditekan, akan tampil

    lalu rubahalah Caption-nya,

  • Menggunakan UserFormUntuk menggunakan UserForm, pertama sisipkan dahulu obyek ini kedalamproject kita.

    tampilan berikut akan muncul

    selanjutnya Anda dapat melakukan langkah-langkah pemograman seperti diVB6.Pada contoh berikut kita akan menyisipakan sebuah CommandButton dan sebuahTextBox ke dalam form kita. Isi dari sebuah range (kita pilih range A1) di salah satuWorkSheet (pada contoh ini kita pilih Sheet1) akan sama dengan isi TextBox ketikaCommandButton ditekan.Pertama-tama kita sisipkan sebuah CommandButton dan TextBox pada UserForm,

  • lalu klik dua kali CommandButton, hingga tampilan berikut muncul

    isikan kode berikut

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

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

    UserForm1.Show

    Kode di atas memerintahkan agar UserForm1 muncul

    kembali ke Excell, dan tekan Ctrl+w untuk menjalankan Prosedur "lembar1".

  • isi TextBox dengan kata "sudah" lalu tekan CommandButton1,

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

    UserForm1.Show vbModeless

  • Bila program kembali dijalankanmaka Anda dapat beralih dari UserForm ke WorkSheet.

    Beberapa Contoh Kode

    Auto Run

    Ada beberapa cara untuk membuat macros yang kita buat berjalan secaraotomatis ketika pertama kali membuka workbook. Yang pertama adalah AutoOpen Method, yang diletakkan di modules, kedua adalah Workbook OpenMethod, yang diletakkan di pada obyek Workbook (lihat penjelasan pada langkah3). Dua Contoh kode berikut akan menampilkan pesan hi ketika Workbookpertama kali dibuka.

    Sub Auto_Open( )

    Msgbox hi

    End Sub

    Private Sub Workbook_Open( )

    Msgbox hi

    End Sub

  • Menghitung Rows, Columns dan Sheet

    Kode berikut digunakan untuk menghitung berapa jumlah rows (baris) ataucolumns(kolom) yang telah kita sorot dengan kursor.

    Sub Hitung( )

    hitung_baris = Selection.Rows.Count

    hitung_kolom = Selection.Columns.Count

    MsgBox hitung_baris & " " & hitung_kolom

    End Sub

    Sub hitung_sheet( )

    hitung_sheet = Application.Sheets.Count

    Msgbox hitung_sheet

    End Sub

    Meng-kopi Range

    Contoh berikut akan meng-kopi range A1 sampai A3 ke D1 sampai D3

    Sub Kopi_Range( )

    Range (A1:A3).Copy Destination:=Range(D1:D3)

    End Sub

    Waktu Sekarang

    Contoh berikut akan menampilkan waktu pada saat ini

    Sub sekarang( )

    Range (A1)= Now

  • End Sub

    Mengetahui Posisi Sel yang Sedang Aktif

    Sub posisi( )

    baris = ActiveCell.Row

    kolom = ActiveCell.Column

    Msgbox baris & , & kolom

    End Sub

    Menghapus Baris yang Kosong

    Sub hapus_baris_kosong( )

    Rng = Selection.Rows.Count

    ActiveCell.Offset(0, 0).Select

    For i = 1 To Rng

    If ActiveCell.Value = "" Then

    Selection.EntireRow.Delete

    Else

    ActiveCell.Offset(1, 0).Select

    End If

    Next I

    End Sub

    Menebalkan dan Mewarnai Huruf (Font)

    Contoh berikut akan menebalkan dan memberi warna merah pada huruf dimanasel sedang aktif.

  • Sub tebal_merah( )

    Selection.Font.Bold = True

    Selection.Font.ColorIndex = 3

    End Sub

    Mengirimkan Workbook melalui Email

    Sub email( )

    ActiveWorkbook.SendMail recipients:= [email protected]

    End Sub

    Fungsi Excel

    Menggunakan fungsi bawaan Excel dalam VBE hampir sama denganmenggunakannya dalam Excel. Misal fungsi round untuk membulatkan sebuahangka, dalam spreadsheet akan terlihat seperti ini

    = round(1.2367, 2)

    Dalam VBE Anda cukup menggunakan Application kemudian disusul fungsi yangakan dipakai.

    Sub bulat( )

    ActiveCell = Application.Round(ActiveCell, 2)

    End Sub

    Menghapus Nama-Nama Range

    Contoh berikut akan menghapus semua nama-nama range di dalam workbook AndaSub hapus_nama_range( )

  • Dim NameX As Name

    For Each NameX In Names

    ActiveWorkbook.Names(NameX.Name).Delete

    Next NameX

    End Sub

    Layar Berkedip

    Program dalam macros yang sedang berjalan dapat membuat layar berkedip-kedip, untuk menghentikannya Anda dapat menyisipkan kode berikut.

    Application.ScreenUpdating = False

    Menuju Range TertentuUntuk menuju suatu range tertentu, kode-kode berikut dapat digunakan.

    Application.Goto Reference:=A1

    Atau,

    Range(A1).Select

    Menuju Sheet tertentuSedangkan untuk menuju worksheet tertentu, gunakan kode-kode berikut.

    Sheets(1).Select

    Atau

    Sheet1.Select

    Untuk menuju Sheet terdepan (nomor 1)

  • Sheet(coba).Select

    Untuk menuju Sheet bernama coba

    Menyembunyikan WorkSheet

    Kode berikut berfungsi untuk menyembunyikan Sheet1

    Sheet1.Visible = xlSheetVeryHidden

    Pengguna tidak dapat membuka sheet yang telah disembunyikan dengan caraini, hanya dengan kode VBE sheet dapat dibuka kembali.

    Input Box

    Kode berikut berguna untuk memunculkan Input Box

    InputBox(Masukkan Nama)

    Menyisipkan Baris dan Kolom

    Kode berikut akan menyisipkan baris diatas range A1,

    Range(A1).Select

    Selection.EntireRow.Insert

    Sedang yang berikut akan menyisipkan satu kolom disamping kiri range A1,

    Range(A1).Select

    Selection.EntireColumn.Insert

    Mengatur Ulang Ukuran Range

    Selection.Resize(7,7).Select

  • Memberi Nama Range

    Selection.Name = nama

    Menyimpan File

    Kode berikut berguna untuk menyimpan file tanpa memberi nama,

    ActiveWorkbook.Save

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

    ActiveWorkbook.SaveAs Filename:=C:\coba.xls

    PenjadwalanKadang-kadang kita hendak menjadwalkan sebuah tugas kepada Excel,contohnya menyimpan file pada jam-jam tertentu. VBE dapat melakukannyadengan menggunakan fungsi Application.OnTime. Sebagai contoh, kodedibawah ini akan menjalankan prosedur Simpan( ) pada jam 12:00 dan 16:00,prosedur Simpan( ) sendiri berisi perintah untuk menyimpan file,

    Sub tugas()

    Application.OnTime TimeValue("12:00:00"), "Simpan"

    Application.OnTime TimeValue("16:00:00"), "Simpan"

    End Sub

    Sub Simpan()

    ActiveWorkbook.Save

    End Sub

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

    TimeValue menjadi TimeValue(10:03:05).

  • Sedangkan bila Anda hendak melakukannya satu jam setelah prosedur tugas( )dijalankan maka rubahlah kodenya seperti demikian,

    Sub tugas()

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

    Perhatikan penambahan kata Now. Kode-kode di atas bekerja bila disimpandalam module, bula Anda ingin menyimpannya di dalam Sheet1 (atau worksheet

    manapun), maka rubahlah Simpan menjadi Sheet1.Simpan

    Ediaman Na70

    [email protected]


Top Related