Macro: Mengolah Data dengan RANGe


Contoh-contoh kode pemrograman VBA dibawah ini akan memperlihatkan bagaimana metode yang bisa digunakan untuk mengolah data dengan menggunakan atribut RANGE. Gunakan macro recorder untuk mendapatkan berbagai jenis pengolangan range ini, dan untuk lebih tahu dasar-dasar tentang macro excel, silahkan lihat posting "Membuat Aplikasi Dalam Excel".
Copy Range
Contoh kode untuk copy range
Sub Macro1()
  Range("A1").Select
  Selection.Copy
  Range("B1").Select
  ActiveSheet.Paste
  Application.CutCopyMode = False   'gunakan perintah ini untuk menon-aktifkan mode copy dalam excel
End Sub


Sebenarnya tidak penting untuk macro melakukan select terlebih dahulu terhadap range sebelum dicopy, untuk lebih sederhana gunakan perintah dibawah ini:

Sub Macro1()
  Range("A1").Copy  Range("B1")
End Sub

Kedua contoh diatas berlaku bila kita meng-copy range dalam satu sheet yang sama, gunakan perintah ini bila sumber range berada pada file excel yang berbeda.
Sub CopyRange()
    Workbooks("File1.xls").Sheets(1).Range("A1").Copy Workbooks("File2.xls").Sheets(2).Range("B1")
End Sub 

Moving / Cut Range
Berikut contoh kodenya
Sub CutRange()
    Range("B2:B4").Cut Range("D4")
End Sub

Prompt Input Nilai Range
Contoh berikut menunjukkan bagaimana pengguna diminta untuk memberikan nilai terhadap range:
Sub InputCell()
    Range("A1").Value = InputBox("Isi nilai pada cell A1")
End Sub

Metode Select Range
Seperti halnya kombinasi tombol berikut Shift+Ctrl+Panah Kanan atau Shift+Ctrl+Panah Bawah, yang digunakan untuk select range pada sheet excel, dimana perintah tersebut digunakan untuk select range mulai dari cell yang active sampai ujung kanan baris yang sama, yang cellnya tidak kosong, atau ke ujung bawah cell yang terisi bila menggunakan perintah yang kedua. Pusing menjelaskannya, sebaiknya anda praktekkan saja.

Perintah yang sama dalam macro dapat digunakan dengan perintah berikut:
Range(ActiveCell, ActiveCell.End(xlDown)).Select
Atau gunakan xlLeftxlTop, dan xlRight.

Copy Paste Special
Dalam perintah copy paste Excel ketika kita copy sebuah range atau cell dan dipaste pada range yang lain, maka bila cell yang dicopy tersebut mengandung rumus atau formula lengkap dengan format latar belakang dan border, maka ketika dipaste semua atribut ini akan ikut dipaste pada cell atau range tujuan paste. Ujung-ujungnya bisa jadi tampilan database bisa tidak rapi atau hasil yang dihasilkan tidak sesuai dengan yang diharapkan. Untuk itu dapat digunakan perintah Paste Special, yang dalam macro bisa ditulis dengan format seperti berikut ini:
Sub Macro1()
    Range("B6:E16").Select
    Selection.Copy
    Range("G6").Select
    Selection.PasteSpecial Paste:=xlPasteValues
    Application.CutCopyMode = False
End Sub
Perintah diatas melakukan copy pada range B6:E16 dan dipaste special pada range G6, dimana hanya nilainya saja yang dipaste.

Yup, demikian sedikit panduan dalam Macro Excel untuk pemula, semoga bermanfaat..

0 komentar:

Posting Komentar