rss

اَللَّهُمَّ انْفَعَنِى بِمَا عَلَّمْتَنِى وَعَلِّمْنِى مَايَنْفَعُنِى وَارْزُقْنِى عِلْمًا يَنْفَعُنِى
“Ya Allah, jadikanlah aku berguna bagi masyarakat dengan ilmu yang Engkau berikan kepadaku dan ajarilah ilmu pengetahuan yang berguna untuk diriku

Senin, 27 September 2010

VISUAL BASIC EXCEL 2007 Intermediate 2

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 keyboard 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").Select

Merupakan perintah pada VB Excell untuk memilih range A1, bila “A1” diubah menjadi “A4” maka kata “coba” akan dituliskan pada range A4.
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 ;

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 dengan bantuan Cells(Rowindex, Columnlindex)., kita dapat menempatkan sebuah nilai atau rumus di sekitar Range yang 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"

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 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 range di atas atau di tepi kanan range-range tersebut.


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, 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 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 worksheet di depan range, sebagai contoh:
Sheet1.Range(“A1”).value=”oke”
Akan mengacu pada range A1 pada Worksheet Sheet1, bila kita menginginkan agar range 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 sebagai sasaran 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 range A1 sampai C3, sedanga yang kedua adalah A1 sampai D4.

Range Bernama

Bagi Anda yang sering menggunakan Excel, mungkin sering memberi nama pada sebuah range untuk mempermudah pekerjaan. Pertanyaan dapatkah menunjuk range bernama tersebut dalam VB Excel ? jawabannya, DAPAT!!
Misalkan Anda memiliki sebuah range yang bernama “sel”, maka range ini dapat ditunjuk 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. 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 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 telah dibentuk. 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 tertulis “pesan kedua”. Sebab Pesan(1,2) sama dengan Sheet1.Range(“A1”).Cells(1,2).
Sebenarnya kita dapat membentuk variabel tanpa membuat dimensinya terlebih dahulu, tetapi cara ini idak 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"

0 komentar:


Posting Komentar

Situs Jual Beli Populer

Best Sponsored

Sponsored by

SMS GRATS

Fans Blogger Unsika

Blogger Karawang
 

Google Adsense

followers

English French German Spain Italian Dutch

Russian Portuguese Japanese Korean Arabic Chinese Simplified
by : BTF