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 RangeContoh 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 xlLeft, xlTop, 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
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.End Sub
Yup, demikian sedikit panduan dalam Macro Excel untuk pemula, semoga bermanfaat...
Tidak ada komentar:
Posting Komentar