Hal 1
Daftar Isi
Daftar Isi ............................................................................................................... 2 BAB I...................................................................................................................6 SEKILAS EXCEL VBA MACRO...............................................................................6 Pengenalan Makro .............................................................................................6 Membuat Makro di Excel.....................................................................................6 Nyalakan Tab Developer.................................................................................6 Buat tombol perintah ......................................................................................7 Membuat dan Menetapkan Makro ..................................................................8 Excel Macro Recorder.......................................................................................10 Mengapa tidak menggunakan Perekam Makro Excel untuk semuanya? ......10 Merekam Makro ............................................................................................10 Jalankan Recorder Makro...............................................................................13 Mengedit Makro ............................................................................................15 BAB II................................................................................................................ 16 DASAR DASAR EXCEL VBA MACRO...................................................................16 Macro Security..................................................................................................16 Visual Basic Editor di Excel...............................................................................18 Macro Comments..............................................................................................20 MsgBox............................................................................................................. 21 Macro Errors.....................................................................................................23 Debug Macros...................................................................................................25 Objects, Properties dan Methods......................................................................27 Excel VBA Property........................................................................................27 Excel VBA Method..........................................................................................27 Lihat semua properti dan metode dari objek. ...............................................28 Workbook and Worksheet.................................................................................29 Object Hierarchy............................................................................................29 Properties and methods of the Workbook and Worksheet object..................30 Application Object.............................................................................................32 BAB III...............................................................................................................33 Pemrograman VBA............................................................................................33 Variables...........................................................................................................33 Copyright @nurdiansyah by RUN TECH GLOBALINDO Hal 2
Hal 5
Pengenalan Makro Anda akan terasa mudah untuk mengikuti tutorial ini (Pengenalan Makro, Dasardasar VBA, Pemrograman dan Kontrol) untuk membuat segala macam macro di Excel VBA. Di bawah ini Anda dapat menemukan gambaran yang lengkap. Tidak masalah jika Anda baru ke Excel VBA dan ingin memulai dari awal atau hanya ingin menggunakan tutorial ini sebagai referensi. Bagian ini adalah untuk pengguna Excel yang tidak memiliki pengetahuan Excel VBA. Excel VBA, yang merupakan singkatan untuk Excel Visual Basic for Applications, adalah nama dari bahasa pemrograman dari Microsoft Excel. Dengan Excel VBA Anda dapat mengotomatisasi tugas di Excel dengan menulis Makro disebut. Hal ini dapat menghemat banyak waktu! Lebih penting lagi ada hal-hal tertentu yang tidak dapat Anda lakukan dengan Excel saja seperti program sederhana. Excel VBA memungkinkan Anda untuk melakukan hal-hal di Excel.
Membuat Makro di Excel Untuk membuat makro di Excel, Anda harus mengaktifkan Excel Visual Basic. Selanjutnya, Anda dapat membuat makro yang akan dieksekusi setelah mengklik pada tombol perintah. Nyalakan Tab Developer Sebelum anda memulai bekerja dengan Excel VBA Macro, anda harus mengaktifkan menu Developer untuk memunculkan menu macro. 1. 2. 3. 4. 5. Klik pada tab File dan pilih Options. Excel Options kotak dialog akan muncul. Klik Customize Ribbon di sisi kiri dari kotak dialog. Dalam Choose commands fromdi sisi kiri kotak dialog, pilih Popular Commands. Dalam Customize the ribbondi sisi kanan kotak dialog, pilih Main tabs. Periksa kotak dan centang Developerdan klik OK.
Hal 6
Buat tombol perintah Anda sekarang dapat klik pada tab Developer yang telah ditempatkan di sebelah tab View. 1. Klik pada Insert. 2. Klik Command Button di bagian ActiveX Controls.
Hal 7
3. Visual Basic Editor akan muncul. Tempatkan kursor Anda di antara 'Private Sub CommandButton1_Click()' dan 'End Sub'. 4. Sebagai contoh, tambahkan baris kode berikut: Range("A1").Value = "Hello"
Hal 8
Makro ini menempatkan kata Halo ke dalam sel A1. 5. Tutup Editor Visual Basic. 6. Sebelum Anda mengklik Commend Button pada sheet, pastikan Desain Mode terpilih. Anda dapat melakukan ini dengan mengklik pada Desain Mode lagi.
Hal 9
Excel Macro Recorder Excel Macro Recorder adalah alat yang sangat berguna di Excel VBA. Dengan Perekam Makro Excel Anda dapat merekam tugas Anda dengan Excel. Selanjutnya, Anda bisa menjalankan tugas berulang dengan mengklik sebuah tombol yang dapat menghemat banyak waktu. Pada bahasan ini menjelaskan seluk-beluk Recorder Makro Excel.
Mengapa tidak menggunakan Perekam Makro Excel untuk semuanya? Sayangnya ada banyak hal tidak dapat Anda lakukan dengan Perekam Macro Excel. Misalnya, kita tidak bisa loop melalui berbagai data dengan Perekam Makro. Selain itu Recorder Makro menggunakan kode lebih banyak dari yang dibutuhkan, yang dapat memperlambat proses Anda turun. Untuk merekam, menjalankan dan mengedit makro, jalankan langkah-langkah berikut. Merekam Makro 1. Klik pada tab Developer. 2. Klik pada Record Macro. Lihat gambar di bawah ini. Setiap perintah yang Anda lakukan akan disimpan ke dalam makro!
Hal 10
3. Di sini Anda dapat memberikan nama makro Anda dan Anda dapat memasukkan
shortcut untuk makro Anda. Anda dapat menyimpan makro Anda dalam tiga workbook. Jika Anda memilih untuk menyimpan makro Anda dalam Workbook Makro Pribadi, makro akan tersedia untuk semua workbook Anda (Excel File). Hal ini karena Excel store makro Anda dalam workbook tersembunyi yang terbuka secara otomatis ketika Excel dimulai. Jika Anda memilih untuk menyimpan makro Anda di Workbook Baru, makro hanya akan tersedia dalam workbook dibuka secara otomatis baru. Jika Anda memilih untuk menyimpan makro Anda dalam Workbook ini, makro hanya akan tersedia dalam buku kerja saat ini.
Kita sekarang akan merekam makro perubahan format Sel untuk Percentase. 4. Klik OK. 5. Klik kanan mouse pada sel yang aktif (sel yang dipilih). Pastikan untuk tidak memilih sel lain! Kemudian klik pada Format Cells ...
Hal 11
Hal 12
Selamat! Anda baru saja direkam makro dengan Record Makro Excel!
Jalankan Recorder Makro Sekarang Anda dapat menguji makro untuk melihat jika dapat mengubah format sel untuk Format Percentase. 1. Masukkan beberapa nomor antara 0 dan 1 di Excel. Pilih nomor.
Hal 13
4. Klik Run.
Hal 14
Mengedit Makro Ada dua cara untuk melihat makro. Anda dapat klik pada tab Macros dari Developer dan kemudian klik Edit. Visual Basic Editor akan muncul. Anda juga dapat langsung membuka Visual Basic Editor dengan mengklik Visual Basic dari tab Developer (atau tekan Alt + F11).
Makro kita telah ditempatkan menjadi sebuah modul yang disebut Module1. Sebelumnya kami menempatkan kode, yang kita dibuat tanpa Excel Macro Recorder langsung pada Sheet1. Kode ditempatkan dalam modul, tersedia untuk workbook secara keseluruhan, sementara kode ditempatkan pada selembar kertas yang hanya tersedia untuk lembar tertentu.
Hal 15
Bagian ini menjelaskan dasar-dasar Excel Visual Basic. Adalah baik untuk mengetahui terminologi dasar dijelaskan dalam bagian ini sebelum Anda mulai pemrograman di Excel Visual Basic.
Macro Security Menyiapkan pengaturan macro security Anda dengan benar adalah penting untuk melindungi diri terhadap virus potensial. Pastikan pengaturan makro keamanan Anda ditetapkan dengan benar. Untuk mengatur pengaturan Macro Security di Excel, jalankan langkah-langkah berikut.
1. Klik pada Keamanan Makro.
Hal 16
2. Di sini Anda memiliki empat pilihan. Opsi pertama akan menonaktifkan semua macro. Pilihan kedua akan selalu meminta Anda untuk mengaktifkan makro. Pilihan ketiga hanya akan memungkinkan macro dengan tanda tangan digital untuk menjalankan, dan meminta Anda untuk memungkinkan orang lain. Pilihan keempat akan mengaktifkan semua macro.
Saran kami adalah menggunakan tingkat keamanan kedua jika Anda mendownload banyak file Excel dari internet. Dengan tingkat keamanan yang Anda selalu dapat menonaktifkan makro jika Anda tidak percaya pemilik dari file Excel. Gunakan tingkat keamanan keempat jika Anda seorang pemula dan hanya mengetik macro Anda sendiri saat ini. Dengan tingkat keamanan Anda tidak harus mengaktifkan macro sepanjang waktu.
Hal 17
Visual Basic Editor di Excel Pelajari bagaimana untuk memulai Visual Basic Editor dan mendapatkan konfigurasi terbaik dari Explorer Proyek dan Window Kode dalam Versi Excel Anda. Visual Basic Editor adalah titik awal untuk menciptakan macro di Excel VBA, sehingga sangat penting untuk mendapatkan hak konfigurasi. Untuk memulai Visual Basic Editor di Excel, klik pada Visual Basic (atau tekan Alt + F11).
Hal 18
Jendela kiri dengan nama sheet dalam hal itu disebut Proyek Explorer. Jika Anda tidak dapat melihat Explorer Proyek, klik View dan kemudian klik Project Explorer. Kemungkinan besar Explorer Proyek sudah akan muncul sebagai sebuah kolom di sisi kiri layar. Jika tidak, jalankan tiga langkah berikut untuk mencapai hal ini. 1. Klik kanan pada Explorer Proyek. 2. Periksa Dockable (jika perlu). 3. Klik pada Proyek - VBAProject dan tarik Explorer Proyek ke sisi kiri layar.
Jendela Kode dapat ditambahkan dengan mengklik pada salah satu nama lembar. Untuk menutupi seluruh layar, Anda dapat memaksimalkan Code Window. Kami pikir ini adalah konfigurasi terbaik dari Visual Basic Editor.
Hal 19
Macro Comments Tambahkan Macro comments untuk Excel VBA kode dan kode Anda akan lebih mudah untuk dibaca sebagai meningkatkan ukuran program.Sebuah Macro comments adalah sepotong teks dalam makro yang tidak akan dieksekusi oleh Excel VBA. Hal ini hanya untuk memberikan Anda informasi tentang makro. Untuk membiarkan Excel VBA tahu bahwa itu adalah komentar, tempatkan tanda petik di antara text(komentar). Jalankan langkah-langkah berikut untuk menempatkan komentar.
1. Peluncuran Visual Basic Editor. 2. Masukkan baris: Tempatkan kata Halo ke dalam sel A1'sebelum baris kode. Setelah
baris dimasukkan, pada Excel VBA baris text warna hijau untuk menunjukkan bahwa itu adalah sebuah komentar.
Ini adalah praktik yang baik untuk menggunakan komentar. Macro comments menjadi lebih berguna sebagai meningkatkan Program.
Hal 20
MsgBox Excel VBA MsgBox (kotak pesan) adalah sebuah kotak dialog, Anda dapat menggunakan di Excel VBA untuk menampilkan informasi kepada pengguna program Anda. Di bawah ini Anda dapat menemukan tiga contoh tentang cara mudah untuk membuat MsgBox di Excel VBA. 1. Untuk menampilkan MsgBox dengan pesan "ini menyenangkan", berikan tombol peritah pada lembar kerja Anda dan hanya menambahkan baris kode berikut: MsgBox "This is fun"
Masukkan nomor acak ke dalam sel A1. Bukan "This is Fun", tambahkan baris kode berikut: MsgBox "Entered value is " & Range("A1").Value
Hal 21
Kami menggunakan & operator untuk menggabungkan (bergabung) dua string. Meskipun Range ("A1"). Nilai bukan string, ia bekerja di sini.
3. Untuk memulai baris baru dalam kotak pesan, Anda dapat menggunakan
vbNewLine. Tambahkan baris kode berikut: MsgBox "Line 1" & vbNewLine & "Line 2" Hasil ketika Anda mengklik tombol perintah pada lembaran:
Hal 22
Macro Errors Sayangnya, tidak semuanya berjalan benar pada kali pertama. Excel VBA kadangkadang akan memberikan macro errors mengatakan bahwa ada sesuatu yang tidak diprogram dengan benar. Ada terlalu banyak Excel Visual Basic untuk menjelaskan kesalahan mereka semua pada tahap ini. Namun, di sini adalah tip yang baik untuk menangani kesalahan. Pertama, kita ingin membuat kesalahan makro. 1. Tempatkan tombol perintah pada lembar kerja Anda dan tambahkan baris kode berikut salah: MgBox This is fun (Bukan garis yang benar M s gBox This is fun)
Hal 23
3. Klik OK.
4. Selanjutnya, di Visual Basic Editor, klik Reset untuk menghentikan debugger! (Lebih lanjut tentang debugger di bab berikutnya) Sekarang mengubah kode. Excel VBA telah mewarnai MgBox kata biru untuk menunjukkan kesalahan makro.
Hal 24
Debug Macros Anda mungkin telah mendengar tentang teknik yang disebut debugging sebelumnya. Dengan teknik ini Anda dapat menemukan kesalahan dalam kode VBA Excel Anda sebelum Anda mengeksekusi kode. Untuk menunjukkan cara untuk men-debug makro, jalankan langkah-langkah berikut. 1. Buka Visual Basic Editor. 2. Buat makro yang salah berikut ini:
3. Tempatkan kursor Anda sebelum Private. 4. Ada dua cara untuk debug makro.Tekan F8 atau memilih Debug dari Menu dan kemudian Langkah KeDebug makro Anda. Baris pertama akan menjadi kuning.
Hal 25
5. Tekan F8 lagi. Kode baris kedua akan menjadi kuning. Selama debugger berpikir semuanya baik-baik saja, tidak akan terjadi. 6. Tekan F8 dua kali. Kesalahan berikut akan muncul.
7. Ia mengatakan bahwa objek tidak mendukung properti atau metode. Rentang objek memiliki properti yang disebut Nilai. Nilai tidak dieja dengan benar di sini, jadi debugger tidak mengakui properti. Lebih lanjut tentang objek, properti dan metode di Properti Obyek, dan Metode. Anda mungkin menemukan debug banyak pekerjaan pada tahap ini, tetapi pasti akan melunasi setelah program Anda menjadi lebih rumit.
Hal 26
Objects, Properties dan Methods Dalam Excel VBA, objek, properti dan metode yang terhubung dengan sebuah titik Properties sesuatu yang objek memiliki (mereka menggambarkan objek)., Sementara metode melakukan sesuatu yang (mereka melakukan aksi dengan objek). Excel VBA Property Mari kita lihat sebuah objek VBA Excel dan VBA Excel properti. Kami akan menggunakan objek Range dan properti Formula. Objek Rentang tidak lebih dari sebuah sel (atau sel) pada lembar kerja Anda. Kita sudah tahu dari Excel bahwa sebuah sel dapat berisi formula. 1. Tempatkan nilai 10 ke dalam sel A1. 2. Buat tombol perintah. 3. Tambahkan baris: Range("B1").Formula = Range("A1") * 2 4. Jalankan makro. Makro ini menempatkan formula ke dalam sel B1 dan hasilnya akan dihitung (20). Excel VBA Method Sekarang mari kita lihat sebuah objek VBA Excel dan VBA Excel metode. Kami akan menggunakan objek Range lagi dan metode ClearContents. 1. Tempatkan nilai 10 ke dalam sel A1. 2. Buat tombol perintah. 3. Tambahkan baris: Range("A1").ClearContents 4. Jalankan makro. Sel A1 sekarang kosong! Itulah cara mudah pemrograman berorientasi obyek dalam Excel Visual Basic!
Hal 27
Lihat semua properti dan metode dari objek. Range objek memiliki sifat lebih banyak dan metode. Ingin melihat lebih banyak? 1. Buka Visual Basic Editor. 2. Ketik: Range. 3. Sebuah daftar akan muncul menunjukkan kepada Anda semua metode Excel VBA dan sifat dari objek Range. Jari-jari adalah sifat dan kotak-kotak hijau adalah metode dari objek Range.
Hal 28
Workbook and Worksheet Jika Anda tidak akrab dengan Objects, Properties dan Metode, kami sangat menganjurkan Anda untuk membaca bab pertama ini. Object Hierarchy Sekarang bahwa Anda telah melihat objek Range, Anda dapat memahami Workbook dan Worksheet objek lebih baik. Dalam Excel Visual Basic setiap objek dapat berisi objek lain, dan objek yang dapat berisi objek lain, dll Dengan kata lain, Excel VBA pemrograman melibatkan bekerja dengan hirarki objek. Hal ini mungkin terdengar cukup membingungkan, tetapi kita akan membuatnya jelas. Ibu dari semua obyek Excel itu sendiri. Kami menyebutnya objek Aplikasi. Obyek aplikasi berisi objek lain. Sebuah contoh dari sebuah objek dari objek Aplikasi adalah objek Workbook (File Excel). Hal ini dapat setiap workbook yang telah Anda buat. Workbook objek berisi objek lain, seperti objek Worksheet. Objek Lembar berisi objek lainnya, seperti objek Range. Kami telah menggunakan baris kode berikut: Range("A1").Value tapi apa yang kita maksudkan adalah sel A1 pada lembar kerja pertama Book1. Jadi kita benar-benar harus menambahkan baris berikut di Excel VBA:
Application.Workbooks("Book1").Worksheets(1).Range("A1").Value Untungnya kita tidak perlu menambahkan baris kode dengan cara ini. Hal ini karena Excel Visual Basic tahu kami berarti Book1 dan lembar pertama karena kami menempatkan tombol perintah kami(ingat?). Sekarang juga ingat modul otomatis dibuat ketika kita direkam makro dengan Perekam Macro Excel . Kode ditempatkan dalam modul tersedia untuk semua workbook dan worksheet.
Hal 29
Tempatkan tes Sub ke dalam modul (Dalam Visual Basic Editor, klik Insert dan kemudian Modul). Sub test() Range("A1").Value = "code placed here" End Sub 1. Mengeksekusi kode (Klik Macro dan kemudian Run, atau klik pada Run dari Visual Basic Editor). Kata-kata "code placed here" akan ditempatkan ke dalam sel A1. 2. Sekarang pergi ke worksheet kedua. Mengeksekusi kode lagi. Anda akan melihat bahwa kata-kata akan ditempatkan pada worksheet kedua juga! 3. Sekarang bahkan membuka workbook baru dan mengeksekusi makro lagi. Anda akan melihat bahwa kata-kata akan ditempatkan di sana juga! Itu karena kita tidak menentukan nama workbook atau worksheet dan Excel VBA secara otomatis mengambil buku kerja yang aktif dan lembar kerja aktif. Sadarilah bahwa jika Anda ingin mengubah hal yang berbeda pada sheet yang berbeda untuk memasukkan objek Lembar Kerja. Properties and methods of the Workbook and Worksheet object Anda mungkin telah memperhatikan bahwa worksheet dan workbook keduanya jamak (lihat baris kode lengkap disebutkan sebelumnya). Itu karena mereka sebenarnya koleksi. Koleksi workbook berisi semua objek Workbook yang sedang terbuka. Koleksi Worksheet berisi semua objek Worksheet dalam workbook. Anda dapat merujuk ke anggota koleksi, yaitu: workbook tunggal atau worksheet tunggal, dalam dua cara. Menggunakan nomor indeks, worksheet (1) adalah sheet pertama dimulai dari kiri. Menggunakan nama anggota: Worksheet ("Sheet1"). Ini mungkin tidak mengejutkan Anda bahwa koleksi dan anggota koleksi memiliki sifat dan metode juga. Berikut adalah beberapa contoh. 1. Properti Count koleksi Lembar dan koleksi workbook. Baris kode berikut menghitung jumlah lembar pencatatan Tempat. tombol perintah pada lembar kerja Anda dan menambahkan baris kode: MsgBox Worksheets.Count
Hal 30
Anda juga dapat menggunakan properti Hitung untuk menghitung jumlah workbook aktif. 2. Metode pengumpulan Tambahkan workbook dan koleksi Worksheets. The following code line creates a new worksheet. Kode baris berikut membuat lembar kerja baru. Worksheets.Add Anda juga dapat menggunakan metode Add untuk menambahkan buku kerja baru.
3. Objek Lembar berisi koleksi lebih menarik, seperti koleksi Baris. Dalam Excel VBA
Anda dapat menggunakan metode Pilih untuk memilih baris. Baris kode di bawah ini memilih baris 2. Worksheets(1).Rows(2).Select Dengan cara yang sama, Anda dapat memilih kolom. Baris kode di bawah ini memilih kolom 7. Worksheets(1).Columns(7).Select
Hal 31
Application Object Ibu dari semua obyek Excel itu sendiri. Kami menyebutnya objek Aplikasi. Obyek aplikasi memberikan akses ke banyak pilihan Excel terkait. WorksheetFunction Anda dapat mengakses hampir semua fungsi Excel melalui objek Aplikasi. 1. Misalnya, menempatkan tombol pada lembar kerja Anda dan tambahkan baris kode berikut: Range("A3").Value = Application.WorksheetFunction.Average(Range("A1:A2")) Ketika Anda mengklik tombol perintah pada worksheet, Excel VBA menghitung rata-rata nilai di A2 untuk A1 dan untuk tempat-tempat hasil ke dalam sel A3.
Catatan: bukan Application.WorksheetFunction.Average, Anda juga dapat hanya menggunakan WorksheetFunction.Average. Ada fungsi lembar kerja lebih banyak dapat Anda gunakan di Excel VBA. Ingin melihat lebih banyak? 1. Jalankan Visual Basic Editor. 2. Ketik: worksheetfunction. 3. Sebuah daftar akan muncul menunjukkan kepada Anda semua fungsi worksheet yang tersedia.
Hal 32
Pada bab ini anda akan belajar bagaimana agar mendapatkan hasil yang maksimal dari Excel VBA. Excel VBA Pemrograman tidak sulit, tetapi Anda perlu tahu kata kunci yang digunakan di Excel VBA. Variables Sub-bab ini mengajarkan Anda bagaimana cara mendeklarasikan, menginisialisasi dan menampilkan variabel Excel VBA. Sebuah variabel digunakan untuk menyimpan sebuah nilai. Sebuah variabel dapat berisi dari salah satu type. Dalam Excel VBA, kita memiliki beberapa macam tipe variabel. Variable of type Integer Variabel integer digunakan untuk menyimpan bilangan bulat. Code : Dim x As Integer x=6 Range("A1").Value =x Hasil :
Dim x As Integer kode baris pertama menyatakan variabel Excel VBA dengan nama x bertipe Integer. Selanjutnya, kita menginisialisasi variabel. Dalam Excel VBA (dan dalam banyak bahasa pemrograman lain), menginisialisasi hanya berarti menetapkan awal nilai ke variabel. Hal ini dilakukan dengan menambahkan baris x = 6. 1. Akhirnya, kita menempatkan nilai yang diberikan untuk variabel x ke dalam sel A1. Hal ini dapat dilakukan dengan menambahkan baris: Range ( A1 ). Value = x
Copyright @nurdiansyah by RUN TECH GLOBALINDO Hal 33
1. Dim book As String kode baris pertama menyatakan variabel Excel VBA
dengan book nama tipe String. 2. Selanjutnya, kita menginisialisasi variabel. Misalnya, tambahkan baris: book = bible. Selalu gunakan apostrophes untuk menginisialisasi variabel String. 3. Akhirnya, kita menempatkan teks ditugaskan untuk book variabel ke sel A1. Anda dapat mencapai ini dengan menambahkan baris Range (A1). Nilai = book. Variable of type Double Sebuah variabel tipe dua kali lebih akurat daripada variabel bertipe Integer dan juga dapat menyimpan nomor setelah koma. Code : Dim x As Integer x = 5.5 MsgBox "value is " & x Hasil :
Hal 34
Tapi itu bukan nilai yang benar! variabel diinisialisasi dengan nilai 5,5 dan anda mendapatkan nilai 6. Apa yang kita butuhkan adalah variabel tipe Double. Code : Dim x As Double x = 5.5 MsgBox "value is " & x
Hasil :
Catatan: Anda mungkin bertanya-tanya mengapa Anda akan menggunakan variabel Integer, jika Anda bisa menggunakan variabel Double lebih akurat. Itu karena variabel double, perlu lebih banyak ruang dan sebagai hasilnya kode Anda akan berjalan lebih lambat. Terlepas dari ini, Anda akan melihat bahwa kesalahan lebih mudah untuk menemukan ketika Anda menggunakan variabel dari type yang tepat.
Hal 35
Variable of type Boolean Code : Dim continue As Boolean continue = True If continue = True Then MsgBox "Boolean variables are cool" Hasil :
1. Kode baris pertama menyatakan tipe variabel Boolean. 2. Selanjutnya, kita menginisialisasi variabel Boolean dengan nilai Benar. 3. Akhirnya, kita dapat menggunakan variabel Boolean untuk hanya menampilkan
Variable of type Date Untuk mendeklarasikan tanggal, kita menggunakan pernyataan Dim. Untuk menginisialisasi tanggal, kita gunakan fungsi DateValue. Ingin mempelajari lebih lanjut tentang tanggal? Buka sub-bab Date dan Time.
Hal 36
String Manipulation Ada banyak fungsi di Excel VBA dapat kita gunakan untuk memanipulasi string. Di bawah ini Anda dapat menemukan review dari fungsi yang paling penting. Tempatkan tombol perintah pada lembar kerja Anda dan tambahkan baris kode yang dijelaskan dalam bahasan ini. Untuk mengeksekusi baris kode. Join Strings Kami menggunakan operator & untuk menggabungkan string. Code : Dim text1 As String, text2 As String text1 = Hi text2 = Tim MsgBox text1 & text2 Hasil :
Hal 37
Left Untuk ekstrak karakter paling kiri dari string, gunakan Left. Code : Dim text As String text = example text MsgBox Left(text, 4) Hasil :
Right Untuk ekstrak karakter paling kanan dari string, gunakan Right. Kita langsung dapat menyisipkan teks dalam fungsi juga. Code : MsgBox Right(example text, 2) Hasil :
Hal 38
Len Untuk mendapatkan panjang string, gunakan Len. Code : MsgBox Len(example text)
Hasil :
Catatan: ruang ( posisi 8 ) termasuk! Instr Untuk mencari posisi substring dalam string, gunakan Instr. Code : MsgBox Instr(example text, am) Hasil :
Hal 39
Mid Untuk mengekstrak substring, mulai di tengah-tengah string, gunakan Mid Code : MsgBox Mid(example text, 9, 4)
Hasil :
Calculate Mari kita mengembangkan sebuah makro kecil yang melibatkan perhitungan sederhana (menambahkan nilai ke variabel) dan teknik pemrograman yang sangat penting. Tempatkan tombol perintah pada lembar kerja Anda dan tambahkan baris kode berikut: Dim x As Integer x = Range(A1).Value x=x+1 Range(A1).Value = x
1. Kode baris pertama menyatakan variabel dengan nama x bertipe Integer. 2. Selanjutnya, kita menginisialisasi variabel ini dengan nilai sel A1. 3. Kami ingin menambahkan 1 ke variabel x. Anda dapat melakukan ini dengan menambahkan baris x = x +1. Dalam Excel Visual Basic (dan dalam bahasa pemrograman lain), simbol = berarti menjadi. Ini tidak berarti sama! Jadi x = x + 1
Hal 40
Hasil :
Hal 41
If Then Statement Dalam banyak situasi kami hanya ingin Excel VBA untuk mengeksekusi baris kode tertentu ketika kondisi tertentu terpenuhi. If Then Statement memungkinkan Anda untuk melakukan hal ini. If Than Statement Tempatkan tombol perintah pada lembar kerja Anda dan tambahkan baris kode berikut: Dim score As Integer, grade As String score = Range(A1).Value If score >= 60 Then grade = passed Range(B1).Value = grade 1. Kode baris pertama menyatakan dua variabel. Salah satu variabel bertipe Integer dan satu variabel bertipe String. 2. Selanjutnya, kita menginisialisasi variabel dengan skor nilai sel A1. 3. Jika skor lebih tinggi atau sama dengan 60, kita memberikan teks lulus ke kelas variabel. 4. Akhirnya, kita menempatkan nilai dari variabel kelas dalam sel B1. Keluarlah dari Visual Basic Editor, masukkan nilai ke dalam sel A1, dan klik pada CommandButton1. Hasil :
Hal 42
Else Statement Jika skor lebih rendah dari 60, baris kode sebelumnya B1 sel kosong. Kita dapat menggunakan pernyataan Lain untuk menetapkan teks gagal ke kelas variabel jika skor lebih rendah dari 60. Dim score As Integer, grade As String score = Range(A1).Value If score >= 60 Then grade = passed Else grade = failed End If Range(B1).Value = grade
Hasil :
Catatan: Ini adalah praktik yang baik untuk selalu memulai baris baru setelah kata-kata Then dan Else dan diakhiri dengan End If . Hanya jika ada satu baris kode setelah Then ada pernyataan Lain, diijinkan untuk menempatkan baris kode langsung setelah Then dan menghilangkan End If
Hal 43
Cells Sejauh ini kita telah menggunakan objek Rentang untuk menempatkan nilai ke dalam sel atau membaca nilai dari sel. Alih-alih objek Range, Anda juga dapat menggunakan Cells. Sebagai contoh, Cells (4,2). Nilai adalah sama dengan Range("B4").value. Cells(4,2). Nilai sesuai dengan nilai Cells dengan rownumber 4 dan columnnumber 2, yang merupakan Cells B4. Tempatkan tombol pada lembar kerja Anda dan tambahkan baris kode berikut: Cells(4, 2).Value = 100 Hasil ketika Anda mengklik tombol perintah pada lembaran :
Anda mungkin bertanya-tanya mengapa Anda akan menggunakan Cells, jika Anda bisa menggunakan Range objek lebih umum. Itu karena menggunakan Cells ini sangat berguna ketika kita ingin loop melalui ranges.
Hal 44
Loop Excel VBA loop (atau untuk loop berikutnya) adalah statement pemrograman yang sangat berguna yang sering digunakan di Excel VBA. Pertama, kita akan melihat contoh mudah bagaimana loop melalui berbagai satu dimensi. Single Loop Anda dapat menggunakan single loop untuk loop melalui berbagai satu dimensi.
Tempatkan tombol pada lembar kerja Anda dan tambahkan baris kode berikut: Dim total As Integer, i As Integer total = 0 For i = 1 To 4 'ignore the two code lines below, they are only added to illustrate the loop Cells(i, 1).Select MsgBox "i = " & i If Cells(i, 1).Value > 40 Then total = total + 1 Next i MsgBox total & " values higher than 40" 1. Dua baris pertama kode mendeklarasikan dua variabel bertipe Integer. Satu bernama total dan satu bernama i. 2. Selanjutnya, kita menginisialisasi variabel total dengan value 0. 3. Tambahkan berikutnya untuk loop yang berlangsung dari 1 sampai 4. 4. Buat pernyataan If Then yang peningkatan total 1 jika value lebih tinggi dari 40. 5. Akhirnya, menggunakan kotak pesan untuk menampilkan jumlah total nilai yang lebih tinggi dari 40.
Hal 45
Hasil ketika Anda mengklik tombol perintah pada lembar beberapa kali:
Hal 46
Penjelasan: Kode garis antara For dan Next akan dieksekusi empat kali. For i = 1, 2, 3 and 4. For i =1, Excel VBA mengisi 1 untuk i dan mendapat Cells (1,1).value. Ini adalah nilai pertama. Ketika Excel VBA mencapai Next i, ia melompat kembali ke pernyataan meningkatnya For i dengan 1. For i = 2, Excel VBA mengisi 2 untuk i dan mendapat Cells(1,2).value. Ini adalah nilai kedua. For i = 2, Excel VBA juga total 1 kenaikan karena nilai kedua lebih tinggi dari 40. For i = 3, dll Excel VBA loop melalui kode empat kali dan setelah itu meninggalkan For Next loop dan mengeksekusi code. Hasil:
Catatan: itu adalah praktik yang baik untuk selalu indentasi (tab) kode antara kata-kata For dan Next. Hal ini membuat kode Anda lebih mudah dibaca.
Hal 47
Logical Operators Dalam segala macam macro kita menggunakan Excel VBA operator logis. Tiga operator logika yang paling banyak digunakan di Excel Visual Basic adalah: And, Or dan Not. Setiap operator logis sekarang akan diilustrasikan dengan bantuan contoh yang mudah. Logical Operator And Sebagai contoh, kita menyewa orang untuk pekerjaan tertentu, hanya jika kecerdasan IQ-nya lebih tinggi atau sama dengan 110 And kesan dia meninggalkan selama wawancara lebih tinggi Or sama dengan 7 (pada skala 1 sampai 10).
Tempatkan tombol pada lembar kerja Anda dan tambahkan baris kode berikut: . If Range("B1").Value >= 110 And Range("B2").Value >= 7 Then Range("B4").Value = "Hire" Else Range("B4").Value = "Do not hire" End If Hasil ketika Anda mengklik tombol perintah pada lembaran:
Makro menggunakan operator logika And untuk mendapatkan hasil yang tepat. Kami tidak mempekerjakan orang karena kecerdasan IQ-nya lebih rendah dari 110.
Hal 48
Logical Operator Or Sebagai contoh, kita menyewa orang untuk pekerjaan tertentu, hanya jika kecerdasan IQ-nya lebih tinggi atau sama dengan 110 Or kesan dia meninggalkan selama wawancara lebih tinggi atau sama dengan 7 (pada skala 1 sampai 10) . Code: If Range("B1").Value >= 110 Or Range("B2").Value >= 7 Then Range("B4").Value = "Hire" Else Range("B4").Value = "Do not hire" End If Hasil:
Contoh ini menunjukkan efek dari pernyataan Or. Meskipun, kecerdasan IQ orang tersebut jauh di bawah 110, kita mempekerjakan orang tersebut karena ia meninggalkan kesan yang sangat baik selama wawancara. Logical Operator Not Sebagai contoh, kita tidak menyewa orang untuk pekerjaan tertentu, yang 'rakus' dan 'semua tentang uang'. Makro di bawah ini menggunakan operator logis Not untuk mendapatkan hasil yang tepat. Operator Not menunjuk bahwa kondisi tidak pasti benar.
Hal 49
Sedikit menyesuaikan makro sebelumnya. Code: If (Range("B1").Value >= 110 Or Range("B2").Value >= 9) And Not Range("B3").Value = "Yes" Then Range("B4").Value = "Hire" Else Range("B4").Value = "Do not hire" End If Hasil:
Kami ingin salah satu dari dua kondisi pertama yang benar (gunakan tanda kurung) dan kondisi ketiga tidak harus benar. Kami tidak mempekerjakan orang karena kondisi ketiga benar (Cells B3 berisi kata Yes). Anda dapat mendebug melalui kode menggunakan F8 (lihat gambar di bawah). Tempatkan kursor pada kode untuk melihat nilai-nilai yang sebenarnya! The '_' simbol yang digunakan di sini untuk melanjutkan pernyataan pada baris baru (tidak diperlukan). Selalu uji makro Anda ketika Anda menggunakan operator logika untuk memastikan bahwa mereka melakukan apa yang Anda inginkan.
Hal 50
Range Bab ini memberikan gambaran sifat dan metode dari objek Range sangat penting VBA Excel. Range Examples Kita telah melihat objek Range di bab-bab sebelumnya. Range objek adalah representasi dari sebuah Cell (atau Cells) pada lembar kerja Anda. Kode baris: ". Range (" A1 ") value = 1 'tempat nilai 1 ke dalam Cell A1. Anda juga dapat mengeksekusi operasi di Excel Visual Basic pada lebih dari satu Cells pada waktu yang sama. Lihat tiga macro berikut. Tempatkan tombol pada lembar kerja Anda dan tambahkan baris kode berikut: Range("A1:A4").Value = 2 Hasil ketika Anda mengklik tombol perintah pada lembaran:
Code: Range("A1:A2,B3:C4").Value = 10
Hal 51
Hasil :
Declare a Range Dalam bab variabel, kami belajar bagaimana cara mendeklarasikan variabel di Excel VBA. Selain mendeklarasikan variabel, Anda juga dapat mendeklarasikan objek Excel VBA Range. Anda dapat melakukan ini dengan menggunakan kata kunci Dim dan Set. Tempatkan tombol pada lembar kerja Anda dan tambahkan baris kode berikut: Dim example As Range Set example = Range("A1:D1") example.Value = 8 Hasil ketika Anda mengklik tombol perintah pada lembaran:
Select a Range Sebuah metode penting dari object Excel VBA Range adalah metode Select. Metode Select hanya memilih kisaran. Code: Dim example As Range Set example = Range("A1:C4") example.Select
Hal 52
Hasil:
Rows Properti Baris memberikan akses ke baris tertentu dari kisaran. Makro berikut memilih baris ketiga Range ("A1: C4"). Dim example As Range Set example = Range("A1:C4") example.Rows(3).Select Hasil:
Catatan: Range ("A1: C4") telah diformat untuk ilustrasi. Columns Properti Kolom memberikan akses ke kolom tertentu dari kisaran. Makro berikut memilih kolom kedua dari Range ("A1: C4"). Dim example As Range Set example = Range("A1:C4") example.Columns(2).Select
Hal 53
Hasil:
Catatan: Range ("A1: C4") telah diformat untuk ilustrasi. Copy and Paste a Range Metode Copy dan Paste digunakan untuk menyalin berbagai tertentu dan untuk menempelkannya di tempat lain pada worksheet. Rentang makro salinan berikut ("A1: A2") dan pasta menjadi Range ("C4: C5"). Range("A1:A2").Select Selection.Copy Range("C4").Select ActiveSheet.Paste Hasil:
Meskipun hal ini diperbolehkan dalam Excel VBA, jauh lebih mudah untuk menggunakan baris kode berikut ini yang tidak persis sama. Range("C4:C5").Value = Range("A1:A2").Value
Hal 54
Clear a Range Untuk menghapus isi range Excel, Anda dapat menggunakan metode Clear. Selain mengosongkan jangkauan, metode ini juga menghapus format dari jangkauan. Jika Anda hanya ingin menghapus konten, Anda dapat menggunakan metode ClearContents. Jika Anda hanya ingin menghapus format, Anda dapat menggunakan metode ClearFormats. Baris kode berikut membersihkan isi Cell A1. Range("A1").ClearContents Catatan:. Range ("A1") ClearContents di Excel VBA adalah persis sama dengan Range ("A1") value = "".
Count Dengan properti Count, Anda dapat menghitung jumlah cell, baris dan kolom dari berbagai Excel. Berikut adalah beberapa contoh.
Hal 55
Makro berikut menghitung jumlah cell-cell range diformat. Dim example As Range Set example = Range("A1:C4") MsgBox example.Count Hasil:
Makro berikut menghitung jumlah baris dari range diformat. Dim example As Range Set example = Range("A1:C4") MsgBox example.Rows.Count Hasil:
Dengan cara yang sama, Anda dapat menghitung jumlah kolom dari kisaran.
Hal 56
Events Bab ini mengajarkan Anda bagaimana untuk program event workbook di Excel VBA. Peristiwa tindakan yang dilakukan oleh pengguna, yang memicu Excel VBA untuk mengeksekusi makro. Pertama, kita akan melihat beberapa contoh peristiwa. Event Examples Di bawah ini adalah daftar contoh acara. Pengguna membuka workbook (workbook event). Pengguna mengaktifkan lembar kerja (worksheet event). Pengguna mengubah isi sel pada lembar (worksheet event). Pengguna mengklik ganda sel (worksheet event). Workbook Event Peristiwa Workbook adalah tindakan yang dilakukan pada buku kerja (file Excel Anda =) yang memicu Excel VBA untuk mengeksekusi makro. Untuk membuat acara workbook, jalankan langkah-langkah berikut.
1. Jalankan Visual Basic Editor. 2. Double Klik pada Workbook ini dalam Proyek Explorer (PENTING!). Jendela kode akan muncul menunjukkan kepada Anda dua drop-down daftar. 3. Pilih Workbook dari daftar drop-down kiri. 4. Daftar drop-down kanan menunjukkan Anda semua peristiwa buku kerja (jangan khawatir, Anda tidak akan menggunakan sebagian besar peristiwa ini). Pilih acara Buka. Excel VBA otomatis menempatkan prosedur Sub untuk Anda. 5. Sekarang Anda dapat menambahkan baris yang hanya akan dieksekusi oleh Excel VBA ketika Anda membuka workbook! Tambahkan baris: MsgBox "Good Morning"
Hal 57
6. Tutup file Excel (jangan lupa untuk menyimpan). 7. Buka file Excel dan menguji event workbook.
Hasil:
Catatan: Ada kemungkinan makro Anda belum dieksekusi karena pengaturan keamanan Anda tidak diatur dengan benar. Jika demikian, pergi ke pengaturan keamanan dan klik pada: enable all macros.
Hal 58
Array Sebuah array Excel VBA adalah sekelompok variabel. Anda dapat merujuk ke variabel tertentu (elemen) dari array dengan menggunakan nama array dan nomor indeks. Untuk membuat array satu dimensi, jalankan langkah-langkah berikut. Tempatkan tombol pada lembar kerja Anda dan tambahkan baris kode berikut: Dim Films(1 To 5) As String Films(1) = "Lord of the Rings" Films(2) = "Speed" Films(3) = "Star Wars" Films(4) = "The Godfather" Films(5) = "Pulp Fiction" MsgBox Films(4)
1. Kode baris pertama menyatakan array String dengan nama Films. Array terdiri dari lima elemen. 2. Selanjutnya, kita menginisialisasi setiap elemen array. Dengan kata lain: kita memberikan nilai awal. 3. Akhirnya, kami menampilkan film keempat menggunakan sebuah MsgBox. Keluar Editor Visual Basic dan menguji array. Hasil ketika Anda mengklik tombol perintah pada lembaran:
Hal 59
Date and Time Tanggal dan waktu di Excel VBA dapat dimanipulasi dengan berbagai cara. Bab ini mengajarkan Anda bagaimana untuk mendapatkan tahun, bulan dan hari tanggal VBA Excel, bagaimana untuk menambahkan jumlah hari untuk date, bagaimana untuk mendapatkan tanggal dan waktu, bagaimana untuk mendapatkan jam, menit dan kedua dari saat ini waktu dan bagaimana mengkonversi string ke nomor urut waktu. Tempatkan rombol pada lembar kerja Anda dan tambahkan baris kode yang dijelaskan dalam bab ini. Untuk mengeksekusi baris kode, klik tombol perintah pada lembaran. Year, Month, Day of a Date Makro berikut akan tahun dari tanggal. Pertama, kita mendeklarasikan sebuah tanggal dengan menggunakan pernyataan Dim. Untuk menginisialisasi tanggal, kita gunakan fungsi DateValue. Code: Dim exampleDate As Date exampleDate = DateValue("Jun 19, 2010") MsgBox Year(exampleDate) Hasil:
Catatan: Gunakan Bulan dan Hari untuk mendapatkan bulan dan hari dari tanggal.
Hal 60
DateAdd Untuk menambahkan jumlah hari untuk tanggal, menggunakan fungsi DateAdd. Fungsi DateAdd memiliki tiga argumen. Isi "d" untuk argumen pertama sejak kita ingin menambahkan hari. Isi 3 untuk argumen kedua untuk menambahkan 3 hari. Argumen ketiga mewakili tanggal, yang dalam contoh ini, jumlah hari akan ditambah. Code: Dim firstDate As Date, secondDate As Date firstDate = DateValue("Jun 19, 2010") secondDate = DateAdd("d", 3, firstDate) MsgBox secondDate
Hasil:
Catatan: Ubah "d" untuk "m" untuk menambahkan beberapa bulan untuk kencan. Tempatkan kursor Anda pada DateAdd di Excel VBA dan klik pada F1 untuk bantuan pada penspesifikasi interval lainnya. Format tanggal tergantung pada pengaturan Anda jendela daerah.
Hal 61
Current Date & Time Untuk mendapatkan tanggal dan waktu, gunakan fungsi Sekarang. Code: MsgBox Now Hasil:
Catatan: mengganti tanggal, seperti "19 Juni 2010" dengan Sekarang dan Anda dapat menggunakan semua fungsi yang dijelaskan di atas pada tanggal saat ini!
Hour, Minute and Second Makro berikut mendapatkan jam waktu saat ini. Code: MsgBox Hour(Now) Hasil:
Catatan: Gunakan Menit dan Kedua untuk mendapatkan menit dan detik dari waktu saat ini.
Copyright @nurdiansyah by RUN TECH GLOBALINDO Hal 62
TimeValue Fungsi TimeValue mengkonversi string ke nomor seri waktu. Nomor seri Waktu adalah angka antara 0 dan 1. Misalnya, siang (tengah hari) direpresentasikan sebagai 0,5. Code: MsgBox TimeValue("9:20:01 am") Hasil:
Sekarang, dengan jelas melihat bahwa Excel menangani internal kali sebagai angka antara 0 dan 1, tambahkan baris kode berikut: Dim y As Double y = TimeValue("09:20:01") MsgBox y Hasil:
Kami harap Anda menemukan informasi tentang tanggal dan waktu fungsi dalam Excel VBA berguna.
Hal 63
Function and Sub Perbedaan antara fungsi dan sub di Excel VBA adalah bahwa fungsi dapat mengembalikan nilai dan sub tidak bisa. Dalam bab ini kita akan melihat sebuah contoh yang mudah dari fungsi dan sub. Fungsi dan subs menjadi sangat berguna sebagai meningkatkan ukuran program. Function Jika Anda ingin Excel VBA untuk melakukan tugas yang mengembalikan hasilnya, Anda dapat menggunakan function. Tempatkan fungsi ke dalam modul (Dalam Visual Basic Editor, klik pada Insert dan kemudian Modul). Misalnya, fungsi dengan Wilayah nama. Fungsi Wilayah (x As Double, y As Double) As Double Area = x * y Luas = x * y End Function End Function Penjelasan: Fungsi ini memiliki dua argumen (dari ganda type) dan tipe kembali (bagian setelah Seperti juga tipe Double). Anda dapat menggunakan nama fungsi (Area) dalam kode Anda untuk menunjukkan hasil yang Anda ingin kembali (di sini x * y). Sekarang Anda dapat merujuk ke fungsi ini (dengan kata lain memanggil fungsi) dari tempat lain dalam kode Anda dengan hanya menggunakan nama fungsi dan memberikan nilai untuk setiap argumen. Tempatkan tombol pada lembar kerja Anda dan tambahkan baris kode berikut: Dim z As Double z = Area(3, 5) + 2 z = Luas (3, 5) + 2 MsgBox z MsgBox z Penjelasan: Fungsi mengembalikan nilai sehingga Anda harus 'menangkap' nilai ini dalam kode Anda. Anda dapat menggunakan variabel lain (z) untuk ini. Selanjutnya, Anda dapat menambahkan nilai untuk variabel ini (jika Anda ingin). Akhirnya, menampilkan nilai menggunakan sebuah MsgBox.
Hal 64
Sub Jika Anda ingin Excel VBA untuk melakukan beberapa tindakan, Anda dapat menggunakan sub. Tempatkan sub ke dalam modul (Dalam Visual Basic Editor, klik pada Insert dan kemudian Modul). Sebagai contoh, sub dengan nama Daerah. Sub Area(x As Double, y As Double) MsgBox x * y End Sub Penjelasan: sub ini memiliki dua argumen (dari dua jenis). Ia tidak memiliki tipe kembali! Anda dapat merujuk ke sub (panggilan sub) dari tempat lain dalam kode Anda dengan hanya menggunakan nama sub dan memberikan nilai untuk setiap argumen. Tempatkan tombol pada lembar kerja Anda dan tambahkan baris kode berikut: Area 3, 5 Hasil ketika Anda mengklik tombol perintah pada lembaran:
Dapatkah Anda melihat perbedaan antara fungsi dan sub? Fungsi mengembalikan nilai 15. Kami menambahkan nilai 2 hasil ini dan ditampilkan hasil akhir. Ketika kita disebut sub kita
Hal 65
Hal 66
Catatan: Ini adalah praktik yang baik untuk mengubah nama kontrol. Ini akan membuat kode Anda lebih mudah dibaca bila Anda memiliki kontrol lebih. Jika Anda memilih untuk mengubah nama kontrol, ingat untuk merujuk pada nama-nama dalam kode Anda.
Hal 67
Link Cell to Textbox Untuk menghubungkan cell untuk textbox, jalankan langkah-langkah berikut: 1. Klik kanan pada tombol perintah. Klik pada View Code. Tambahkan baris kode berikut: Range("E2").Value = TextBox1.Value 2. Enter some text into the textbox. Masukkan beberapa teks ke dalam textbox.
Untuk menempatkan teks dari sel ke textbox (sebaliknya), cukup tambahkan baris kode berikut: TextBox1.Value = Range("E2").Value Clear Textbox Untuk menghapus sebuah textbox, menggunakan baris kode berikut: TextBox1.Value = "" Meskipun di beberapa situasi dapat berguna untuk langsung menempatkan sebuah textbox pada lembar kerja Anda, textbox ini sangat berguna ketika ditempatkan pada UserForm.
Hal 68
Listbox Excel VBA listbox, adalah daftar drop-down dari mana pengguna dapat membuat pilihan. Pelajari cara menggambar listbox pada lembar kerja Anda dan bagaimana untuk menambahkan item ke listbox.
Draw a Listbox Excel 2010 dan Excel 2007 pengguna. Klik pada Insert tab Developer dan kemudian klik pada Kotak Daftar di bagian ActiveX Controls.
Hal 69
Add items to Listbox Untuk menambahkan beberapa item ke listbox, jalankan langkah-langkah berikut: 1. Klik kanan pada listbox (pastikan mode desain dipilih) klik Properties. Isi E2 untuk LinkedCell dan B2: B4 untuk ListFillRange.
Hasil:
Meskipun di beberapa situasi dapat berguna untuk langsung menempatkan listbox pada lembar kerja Anda, listbox sangat berguna ketika ditempatkan pada UserForm.
Hal 70
Combobox Excel VBA combobox adalah daftar drop-down dari mana pengguna dapat membuat pilihan. Perbedaan antara listbox dan combobox adalah bahwa dengan combobox pengguna juga dapat mengisi dalam pilihannya sendiri jika tidak termasuk dalam daftar. Draw a Combobox Excel 2010 dan Excel 2007 pengguna. Klik pada Insert tab Developer dan kemudian klik pada Combo Box di bagian ActiveX Controls.
Hal 71
Add item to combobox Untuk menambahkan beberapa item ke combobox, jalankan langkah-langkah berikut: 1. Klik kanan pada combobox (pastikan mode desain dipilih) sebuah klik Properties. Isi E2 untuk LinkedCell dan B2: B4 untuk ListFillRange.
2. Pilih item dari combobox atau mengisi pilihan Anda sendiri. Hasil:
Meskipun di beberapa situasi dapat berguna untuk langsung menempatkan combobox pada lembar kerja Anda, combobox sangat berguna ketika ditempatkan pada UserForm.
Hal 72
Checkbox Sebuah kotak centang Excel VBA adalah bidang yang dapat diperiksa untuk menyimpan informasi. Pelajari cara menggambar kotak centang pada lembar kerja Anda dan bagaimana untuk merujuk ke kotak centang dalam kode Anda.
Draw a Checkbox Excel 2010 dan Excel 2007 pengguna. Klik pada Insert tab Developer dan kemudian klik pada Kotak Centang di bagian ActiveX Controls.
Catatan: Ini adalah praktik yang baik untuk mengubah nama kontrol. Ini akan membuat kode Anda lebih mudah dibaca bila Anda memiliki kontrol lebih. Jika Anda memilih untuk mengubah nama kontrol, ingat untuk merujuk pada nama-nama dalam kode Anda.
Hal 73
Refer to Checkbox in your Code Untuk merujuk pada kotak centang di Anda kode VBA Excel, jalankan langkahlangkah berikut: 1. Klik kanan pada kotak centang. Klik pada View Code. Tambahkan baris kode berikut: Private Sub CheckBox1_Click() If CheckBox1.Value = True Then Range("C2").Value = 1 If CheckBox1.Value = False Then Range("C2").Value = 0 End Sub
2. Keluarlah dari Visual Basic Editor dan memeriksa checkbox.
Hasil:
Meskipun di beberapa situasi dapat berguna untuk langsung menempatkan kotak centang pada lembar kerja Anda, checkbox ini sangat berguna ketika ditempatkan pada UserForm.
Hal 74
Option Buttons Excel VBA tombol pilihan adalah sama dengan kotak centang kecuali bahwa tombol pilihan tergantung pada masing-masing kotak centang, sementara lainnya tidak. Ini berarti bahwa ketika Anda memeriksa satu tombol pilihan tombol pilihan lainnya secara otomatis akan hapus centang. Draw an Option Button Excel 2010 dan Excel 2007 pengguna. Klik pada Insert tab Developer dan kemudian klik pada tombol Option di bagian ActiveX Controls.
Catatan: Ini adalah praktik yang baik untuk mengubah nama kontrol. Ini akan membuat kode Anda lebih mudah dibaca bila Anda memiliki kontrol lebih. Jika Anda memilih untuk mengubah nama kontrol, ingat untuk merujuk pada nama-nama dalam kode Anda.
Hal 75
Refer to Option Button in your Code Untuk merujuk ke tombol pilihan dalam kode VBA Excel Anda, jalankan langkahlangkah berikut:
1. Klik kanan pada option button. Klik pada View Code. Tambahkan baris kode
berikut: Private Sub OptionButton1_Click() If OptionButton1.Value = True Then Range("D3").Value = 30 End Sub
2. Klik kanan pada tombol pilihan kedua. Klik pada View Code. Tambahkan baris kode berikut: Private Sub OptionButton2_Click() If OptionButton2.Value = True Then Range("D3").Value = 50 End Sub
3. Keluarlah dari Visual Basic Editor dan klik pada tombol pilihan.
Hasil:
Anda akan melihat bahwa ketika Anda memeriksa 'Perempuan' tombol pilihan 'Pria' tombol pilihan secara otomatis akan hapus centang dan sebaliknya. Meskipun di beberapa situasi dapat berguna untuk langsung menempatkan tombol pilihan pada lembar kerja Anda, tombol pilihan ini sangat berguna ketika ditempatkan pada UserForm.
Copyright @nurdiansyah by RUN TECH GLOBALINDO Hal 76
Hal 77
Controls Kontrol yang paling penting yang dapat ditambahkan ke Excel VBA UserForm adalah: Labels Contoh label di UserForm kami adalah: 'Name:' , 'Phone Number:' , 'City Preference:' , 'Dinner Preference:' , dll.
Copyright @nurdiansyah by RUN TECH GLOBALINDO Hal 78
4. Jika Toolbox tidak muncul secara otomatis, klik pada View dan kemudian Toolbox. 5. Tambahkan semua kontrol. Setelah ini telah selesai, hasilnya harus konsisten dengan gambar UserForm ditampilkan sebelumnya. Sebagai contoh, membuat Label dengan mengklik pada Label dari Toolbox. Selanjutnya, Anda dapat menarik Label Pada UserForm. Ketika Anda tiba di CarFrame, ingat untuk menarik Bingkai ini terlebih dahulu sebelum Anda menempatkan dua tombol pilihan di dalamnya. 6. Mengubah nama dan keterangan dari kontrol. Klik kanan mouse pada kontrol masingmasing. Kemudian klik Properties. Nama yang digunakan dalam kode VBA Excel. Keterangan adalah mereka yang muncul pada layar Anda. Mengubah nama dan keterangan dari kontrol sesuai dengan tabel di bawah ini.
Hal 80
Caption Dinner Planner N/A N/A N/A N/A June 13th June 20th June 27th Car Yes No N/A N/A OK Cancel Clear Form See Picture
DinnerPlannerUserForm NameTextBox PhoneTextBox CityListBox DinnerComboBox DateCheckBox1 DateCheckBox2 DateCheckBox3 Frame CarFrame Option button CarOptionButton1 CarOptionButton2 Textbox MoneyTextBox Spin button MoneySpinButton Command button OKButton Command button CancelButton Command button ClearButton 9 Labels No need to change
Catatan: itu adalah praktik yang baik untuk mengubah nama kontrol. Ini akan membuat kode Anda lebih mudah untuk dibaca. Show the Userform Untuk menampilkan UserForm, menempatkan tombol perintah pada lembar kerja Anda dan tambahkan baris kode berikut:
Hal 81
Hal 82
Private Sub CancelButton_Click() Unload Me End Sub Assign a macro to the Clear button Untuk memanggil Sub UserForm_Initialize ketika Anda klik pada tombol Clear, jalankan langkah-langkah berikut. 1. 2. 3. 4. Jalankan Visual Basic Editor. Double klik pada DinnerPlannerUserForm dari Proyek Explorer. Double klik pada tombol Clear. Tambahkan baris kode berikut:
Hal 83
Assign a macro to the OK button Setelah mengklik tombol OK, informasi dari UserForm akan ditempatkan pada lembar kerja Anda. Private Sub OKButton_Click() Dim emptyRow As Long 'Make Sheet1 Active Sheets(1).Activate 'Determine emptyRow emptyRow = WorksheetFunction.CountA(Range("A:A")) + 1 'Export Data to worksheet Cells(emptyRow, 1).Value = NameTextBox.Value Cells(emptyRow, 2).Value = PhoneTextBox.Value Cells(emptyRow, 3).Value = CityListBox.Value Cells(emptyRow, 4).Value = DinnerComboBox.Value If DateCheckBox1.Value = True Then Cells(emptyRow, 5).Value = DateCheckBox1.Caption If DateCheckBox2.Value = True Then Cells(emptyRow, 5).Value = Cells(emptyRow, 5).Value & " " & DateCheckBox2.Caption If DateCheckBox3.Value = True Then Cells(emptyRow, 5).Value = Cells(emptyRow, 5).Value & " " & DateCheckBox3.Caption If CarOptionButton1.Value = True Then Cells(emptyRow, 6).Value = "Yes" Else Cells(emptyRow, 6).Value = "No" End If Cells(emptyRow, 7).Value = MoneyTextBox.Value End Sub
Hal 84
Hal 85
Assign a macro to the Money Spin Button Dengan menggunakan Tombol Putar Uang pengguna dapat menunjukkan betapa dia / dia ingin menghabiskan. Jalankan langkah-langkah berikut untuk program ini: 1. 2. 3. 4. Jalankan Visual Basic Editor. Double klik pada DinnerPlannerUserForm dari Proyek Explorer. Double klik pada tombol Putar Uang. Tambahkan baris kode berikut:
Private Sub MoneySpinButton_Change() MoneyTextBox.Text = MoneySpinButton.Value End Sub Test the Userform Keluarlah dari Visual Basic Editor, mengisi baris 1, dan menguji UserForm. Hasil:
Hal 86