Senin, 02 Januari 2012

Tips Merapikan Kode Makro Hasil Recording (Rekaman)

Record Macro adalah salah satu fitur yang sangat berguna bagi pemakain Excel baik user pemula maupun user yang sudah berpengalaman. Namun, kode macro yang dihasilkan dari proses perekaman Makro tersebut kadang butuh sentuhan lanjutan agar lebih rapi dan berjalan lebih cepat.
Beberapa tips berikut bisa dijadikan pedoman.





  • Buanglah kata Select yang diikuti kata Selection

Untuk menambah efek Bold terhadap sebuah sel (A1, misalnya), maka langkah awal biasanya adalah men-Select sel A1, kemudian meng-klik simbol B di toolbar. Jika langkah-langkah tersebut di rekam, kode macro yang dihasilkan adalah : 
         Range("A1").Select
                  Selection.Font.Bold = True
Kode makro seperti di atas, bisa dirapikan dengan menghapus kata Select dan Selection:
                 Range("A1").Font.Bold = True


Dengan cara di atas, ada dua keuntungan yang bisa didapat, pertama mengurangi jumlah baris dan kedua, menjadikan makro kita berlari lebih kencang.



  • Merapikan kode Copy dan Paste

Perhatikan kode hasil record makro berikut:
                 Range("A1").Select
                 Selection.Copy
                 Range("A2").Select
                 ActiveSheet.Paste

      

Kode di atas bisa dirapikan dengan:

                 Range("A1").Copy
                 Range("A2").Paste
atau :
                 Range("A1").Copy Destination:=Range("A2")

  • Rapikan penggunaan With …… End With

Misal kita ingin memformat sel A1 dengan warna kuning. Dengan cara merekam didapatkan kode berikut: 
                   Range("A1").Select
                   With Selection.Interior
                        .Pattern = xlSolid
                        .PatternColorIndex = xlAutomatic
                        .Color = 65535
                        .TintAndShade = 0
                        .PatternTintAndShade = 0
                   End With
Karena kita hanya butuh kode warna saja, maka kode di atas bisa dimodif seperti berikut: 
                  With Range("A1").Interior
                     .Color = 65535
                  End With

atau :
                  Range("A1").Interior.color = 65535

  • Hapus ScrollRow dan ScrollColumn jika tidak perlu

Selama proses merekam, terkadang kita menggulung layar secara horizontal maupun vertikal. Seringkali proses tersebut tidaklah begitu penting. Misal saat ini kita sedang berada di sel A1 dan ingin men-Select sel AA100, mau tidak mau kita harus menggulung layar ke kanan dan ke bawah. Padahal yang kita inginkan hanya menselect AA100. Maka proses penggulungan layar tersebut bisa dibuang. Perhatikan kode berikut: 
               Range("A1").Select
               ActiveWindow.SmallScroll ToRight:=7
               ActiveWindow.SmallScroll Down:=80
               Range("AA100").Select
Kode di atas, bisa langsung: Range("AA100").Select

  • Jangan tampilkan perubahan di layar selama proses

Record Macro adalah proses merekam sesuatu yang dilakukan user. Jadi ketika dijalankan, segala perubahan di layar akan juga ditampilkan dalam waktu yang cepat. Agar lebih menawan, perubahan-perubahan yang terjadi selama proses-proses tersebut bisa kita sembunyikan, hanya hasilnya yang ditampilkan, yakni dengan mengeset ScreenUpdating menjadi FALSE di awal proses, dan mengembalikan lagi menjadi TRUE di akhir proses. Memang, untuk proses yang pendek hal seperti ini kurang terlihat bedanya, tapi untuk langkah yang agak panjang, maka perbedaannya akan cukup terasa.
Contoh :
                Sub FormatDanKopiSel()
                Application.ScreenUpdating = False
                    Range("A1").Interior.ColorIndex = 5
                    ...........
                    ....... dst
                    Range("AA100").Select
               Application.ScreenUpdating = True
               End Sub

Demikian tips hari ini, semoga bermanfaat



Artikel Terkait:

6 komentar:

Admin mengatakan...

Mantap. Sangat membantu untuk yang baru belajar macro

Udin Haeruddin mengatakan...

Amin........

Anonim mengatakan...

Makasih Mas Heru..two thumbs up !!

Anonim mengatakan...

manthap sekali mas Heru,,, terima kasih tips dan infonya... tambah lagi donk....

Iwan Teguh mengatakan...

Terima kasih mas, postingan anda sangat membantu sekali. muaaantap poool......

adipampang mengatakan...

Keran Banget mas bro, sangat membantu