Makro Excel - UserForms

Terkadang, Anda mungkin harus mengumpulkan informasi berulang kali dari orang lain. Excel VBA memberi Anda cara mudah untuk menangani tugas ini-UserForm. Seperti formulir lain yang Anda isi, UserForm membuatnya mudah dipahami, informasi apa yang harus diberikan. UserForm ramah pengguna dengan cara kontrol yang disediakan cukup jelas, disertai dengan instruksi tambahan jika diperlukan.

Keuntungan utama UserForm adalah Anda dapat menghemat waktu yang Anda habiskan untuk apa dan bagaimana informasi itu diisi.

Membuat UserForm

Untuk membuat UserForm, lakukan sebagai berikut -

  • Klik tab PENGEMBANG pada Pita.
  • Klik Visual Basic. Jendela Visual Basic untuk buku kerja terbuka.
  • Klik Sisipkan,
  • Pilih UserForm dari daftar dropdown.

UserForm muncul di sisi kanan jendela.

Memahami UserForm

Maksimalkan jendela UserForm.xlsx - UserForm1.

Anda sedang dalam mode desain sekarang. Anda dapat memasukkan kontrol pada UserForm dan menulis kode untuk masing-masing tindakan. Kontrol tersedia di ToolBox. Properti UserForm berada di jendela Properties. UserForm1 (keterangan dari UserForm) diberikan di bawah Formulir di Explorer Proyek.

  • Ubah keterangan UserForm menjadi Laporan Proyek - Harian di jendela properti.
  • Ubah nama UserForm menjadi ProjectReport.

Perubahan tersebut tercermin dalam UserForm, properti, dan penjelajah proyek.

Kontrol di ToolBox

UserForm akan memiliki komponen yang berbeda. Saat dan ketika Anda mengklik salah satu komponen, Anda akan diberikan instruksi tentang apa dan bagaimana informasi itu akan diberikan atau Anda akan diberikan opsi (pilihan) untuk dipilih. Semua ini disediakan melalui kontrol ActiveX di ToolBox dari UserForm.

Excel menyediakan dua tipe kontrol - Kontrol formulir dan kontrol ActiveX. Anda perlu memahami perbedaan antara kedua jenis kontrol ini.

Kontrol bentuk

Kontrol formulir adalah kontrol asli Excel yang kompatibel dengan versi Excel yang lebih lama, dimulai dengan Excel versi 5.0. Kontrol formulir juga dirancang untuk digunakan pada lembar makro XLM.

Anda dapat menjalankan makro dengan menggunakan kontrol Formulir. Anda dapat menetapkan makro yang sudah ada ke kontrol, atau menulis atau merekam makro baru. Saat kontrol diklik, makro. Anda telah mempelajari cara menyisipkan tombol perintah dari kontrol Formulir di lembar kerja untuk menjalankan makro. Namun, kontrol ini tidak dapat ditambahkan ke UserForm.

Kontrol ActiveX

Kontrol ActiveX dapat digunakan di VBA UserForms. Kontrol ActiveX memiliki properti ekstensif yang dapat Anda gunakan untuk mengkustomisasi tampilan, perilaku, font, dan karakteristik lainnya.

Anda memiliki kontrol ActiveX berikut di UserForm ToolBox -

  • Pointer
  • Label
  • TextBox
  • ComboBox
  • ListBox
  • CheckBox
  • OptionButton
  • Frame
  • ToggleButton
  • CommandButton
  • TabStrip
  • MultiPage
  • ScrollBar
  • SpinButton
  • Image

Selain kontrol ini, Visual Basic memberi Anda fungsi MsgBox yang dapat digunakan untuk menampilkan pesan dan / atau meminta pengguna untuk suatu tindakan.

Di beberapa bagian berikutnya, Anda akan memahami kontrol dan MsgBox ini. Kemudian, Anda akan dapat memilih kontrol mana yang diperlukan untuk mendesain UserForm Anda.

Label

Anda dapat menggunakan Label untuk tujuan identifikasi dengan menampilkan teks deskriptif, seperti judul, keterangan dan / atau instruksi singkat.

Example

Kolom tulisan

Anda dapat menggunakan TextBox yang merupakan kotak persegi panjang, untuk mengetik, menampilkan atau mengedit teks. Anda juga dapat menggunakan TextBox sebagai bidang teks statis yang menyajikan informasi hanya-baca.

Example

Kotak daftar

Anda dapat menggunakan Kotak Daftar untuk menampilkan daftar satu atau beberapa item teks yang dapat dipilih pengguna. Gunakan kotak daftar untuk menampilkan banyak pilihan yang bervariasi dalam jumlah atau konten.

  • Sisipkan ListBox di UserForm.
  • Klik pada ListBox.
  • Ketik Kode Proyek untuk Nama di jendela Properties dari ListBox.

Ada tiga jenis Kotak Daftar -

  • Single-selection List box- Kotak Daftar pilihan tunggal memungkinkan hanya satu pilihan. Dalam kasus ini, kotak Daftar menyerupai sekelompok tombol opsi, kecuali kotak Daftar bisa menangani sejumlah besar item dengan lebih efisien.

  • Multiple selection List Box - Kotak Daftar pilihan ganda memungkinkan salah satu pilihan atau pilihan yang berdekatan (berdekatan).

  • Extended-selection List Box - Kotak Daftar pilihan-tambahan memungkinkan satu pilihan, pilihan yang berdekatan dan pilihan yang tidak bersebelahan (atau terputus-putus).

Anda dapat memilih salah satu dari jenis Kotak Daftar ini, dari jendela Properti.

  • Klik kanan pada UserForm.
  • Pilih Lihat Kode dari daftar dropdown. Jendela kode UserForm terbuka.
  • Klik Inisialisasi di kotak kanan atas jendela kode.
  • Ketik berikut ini di bawah Private Sub UserForm_Initialize ().
ProjectCodes.List = Array ("Proj2016-1", "Proj2016-2", "Proj2016-3", "Proj20164", "Proj2016-5")
  • Klik tab Jalankan di Pita.
  • Pilih Run Sub / UserForm dari daftar dropdown.

Selanjutnya, Anda dapat menulis kode untuk tindakan memilih item dalam daftar. Jika tidak, Anda bisa menampilkan teks yang dipilih, yaitu kasus untuk mengisi Kode Proyek dalam Laporan.

Kotak kombo

Kamu dapat memakai ComboBoxyang menggabungkan kotak teks dengan kotak daftar untuk membuat kotak daftar turun bawah. Kotak kombo lebih ringkas daripada kotak daftar tetapi mengharuskan pengguna untuk mengklik panah bawah untuk menampilkan daftar item. Gunakan kotak kombo untuk memilih hanya satu item dari daftar.

  • Sisipkan ComboBox di UserForm.
  • Klik Kotak Kombo.
  • Ketik ProjectCodes2 untuk Nama di jendela Properties dari ComboBox.
  • Klik kanan pada UserForm.
  • Pilih Lihat Kode dari daftar dropdown.
  • Jendela kode UserForm terbuka.

Ketik yang berikut seperti yang ditunjukkan di bawah ini.

ProjectCodes2.List = Array ("Proj2016-1", "Proj2016-2", "Proj2016-3", "Proj20164", "Proj2016-5")
  • Klik tab Jalankan di Pita.
  • Pilih Run Sub / UserForm dari daftar dropdown.

Klik panah bawah untuk menampilkan daftar item.

Klik pada item yang diperlukan, katakanlah, Project2016-5. Opsi yang dipilih akan ditampilkan di kotak kombo.

Kotak Centang

Anda dapat menggunakan kotak centang untuk memilih satu atau beberapa opsi yang ditampilkan dengan mengklik di dalam kotak. Opsi akan memiliki label dan Anda dapat dengan jelas memvisualisasikan opsi apa yang dipilih.

Kotak centang dapat memiliki dua status -

  • Dipilih (dihidupkan), dilambangkan dengan tanda centang di kotak
  • Dihapus (dimatikan), dilambangkan dengan kotak kosong

Anda dapat menggunakan kotak centang untuk pemilihan opsi dalam kotak kombo untuk menghemat ruang. Dalam kasus seperti itu, kotak centang juga dapat memiliki status ketiga -

  • Campur, artinya kombinasi status hidup dan mati, dilambangkan dengan titik hitam di dalam kotak. Ini akan ditampilkan untuk menunjukkan beberapa pilihan dalam kotak kombo dengan kotak centang.

  • Sisipkan kotak centang di UserForm seperti yang ditunjukkan di bawah ini.

  • Klik tab Jalankan di Pita.
  • Pilih Run Sub / UserForm dari daftar dropdown.
  • Klik di kotak untuk opsi yang Anda pilih.

OptionButton

Anda dapat menggunakan tombol opsi, juga dikenal sebagai tombol radio untuk membuat satu pilihan dalam serangkaian pilihan eksklusif yang terbatas. Tombol opsi biasanya terdapat dalam kotak grup atau bingkai.

Tombol opsi diwakili oleh lingkaran kecil. Tombol opsi dapat memiliki salah satu dari dua status berikut -

  • Dipilih (dihidupkan), dilambangkan dengan titik di lingkaran
  • Dihapus (dimatikan), dilambangkan dengan kosong

Bingkai

Anda dapat menggunakan kontrol bingkai, juga disebut sebagai kotak grup untuk mengelompokkan kontrol terkait ke dalam satu unit visual. Biasanya, tombol opsi, kotak centang atau konten yang terkait erat dikelompokkan dalam kontrol bingkai.

Kontrol bingkai diwakili oleh objek persegi panjang dengan label opsional.

  • Sisipkan bingkai dengan teks "Pilihan".

  • Masukkan dua tombol opsi dengan teks "Ya" dan "Tidak" di kontrol bingkai. Opsi Ya dan Tidak saling eksklusif.

  • Klik tab Jalankan di Pita.
  • Pilih Run Sub / UserForm dari daftar dropdown.
  • Klik pada opsi yang Anda pilih.

ToggleButton

Anda dapat menggunakan tombol sakelar untuk menunjukkan keadaan, seperti Ya atau Tidak, atau mode, seperti hidup atau mati. Tombol ini berganti-ganti antara status aktif dan nonaktif saat diklik.

Masukkan tombol sakelar pada UserForm seperti yang ditunjukkan di bawah ini -

  • Klik tab Jalankan di Pita.

  • Pilih Run Sub / UserForm dari daftar dropdown. Tombol sakelar akan dalam keadaan aktif secara default.

Klik tombol sakelar. Tombol sakelar akan dinonaktifkan.

Jika Anda mengklik tombol sakelar lagi, itu akan diaktifkan.

Tombol perintah

Anda dapat menggunakan tombol perintah untuk menjalankan makro yang melakukan beberapa tindakan saat pengguna mengkliknya. Anda telah mempelajari cara menggunakan tombol perintah pada lembar kerja untuk menjalankan makro.

Tombol perintah juga disebut sebagai tombol tekan. Masukkan tombol perintah pada UserForm seperti yang ditunjukkan di bawah ini -

  • Klik kanan pada tombol perintah.
  • Ketik kode berikut di sub Commandbutton1_click ().
ProjectCodes2.DropDown
  • Klik tab Jalankan di Pita.
  • Pilih Run Sub / UserForm dari daftar dropdown.

Klik tombol perintah. Daftar dropdown kotak kombo terbuka, karena ini adalah tindakan yang telah Anda tulis dalam kode.

TabStrip

Anda dapat menyisipkan tab setrip yang menyerupai tab Excel di UserForm.

Scroll bar

Anda dapat menggunakan bilah gulir untuk menggulir melalui berbagai nilai dengan mengklik panah gulir atau dengan menyeret kotak gulir.

Sisipkan bilah gulir pada UserForm dengan menggambarnya pada posisi yang diinginkan dan sesuaikan panjang bilah gulir.

  • Klik kanan pada bilah gulir.
  • Pilih Lihat Kode dari daftar dropdown. Jendela Kode terbuka.
  • Tambahkan baris berikut di bawah sub ScrollBar1_Scroll ().
TextBox2.Text = "Scrolling Values"
  • Klik tab Jalankan di Pita.
  • Pilih Run Sub / UserForm dari daftar dropdown.

Tarik kotak gulir. Teks - Nilai Gulir akan ditampilkan di kotak teks seperti yang Anda tentukan sebagai tindakan untuk gulir bilah gulir.

MsgBox ()

Anda dapat menggunakan fungsi MsgBox () untuk menampilkan pesan saat Anda mengklik sesuatu. Ini bisa menjadi pedoman atau beberapa informasi atau peringatan atau peringatan kesalahan.

Misalnya, Anda dapat menampilkan pesan bahwa nilai sedang digulir saat Anda mulai menggulir kotak gulir.

Tampilan Ikon Kotak Pesan

Anda dapat menggunakan tampilan ikon kotak pesan yang menggambarkan pesan tertentu. Anda memiliki beberapa ikon kotak pesan yang sesuai dengan tujuan Anda -

  • Ketik kode berikut di bawah ScrollBar1_scroll.
MsgBox "Select Ok or Cancel", vbOKCancel, "OK  - Cancel Message" 
MsgBox "It's an Error!", vbCritical, "Run time result" 
MsgBox "Why this value", vbQuestion, "Run time result" 
MsgBox "Value Been for a Long Time", vbInformation, "Run time result" 
MsgBox "Oh Is it so", vbExclamation, "Run time result"
  • Klik tab Jalankan di Pita.
  • Pilih Run Sub / UserForm dari daftar dropdown.
  • Tarik kotak gulir.

Anda akan mendapatkan kotak pesan berikut secara berurutan.

Mendesain UserForm

Sekarang, Anda memiliki pemahaman tentang berbagai kontrol yang dapat Anda gunakan di UserForm. Pilih kontrol, kelompokkan jika diperlukan dan atur di UserForm sesuai beberapa urutan yang berarti. Tulis tindakan yang diperlukan sebagai kode yang sesuai dengan kontrol masing-masing.

Lihat tutorial VBA di pustaka tutorial ini untuk contoh UserForm.