02 March 2021

Cara Membuat Kalender/Tanggal Pada Userform Vba Excel

Cara Membuat Calender Atau Tanggal Pada Userform Vba Excel

Assalamu’alaikum Wr.Wb

Cara Membuat Kalender/Tanggal Pada Userform Vba Excel - Dalam membuat sebuah data pada form vba excel, saya contohkan saja kita akan membuat sebuah form data siswa. Pada form tersebut terdapat input tanggal, kebanyakan dari teman-teman yang baru belajar membuat aplikasi  lewat vba excel dalam menambahkan tanggal hanya diinput secara manual.

Menurut saya sih jika dinput secara manual itu sah-sah saja. Tapi, kurang bagus karna diketik satu-persatu. Jika dilihat pada aplikasi yang di buat para master vba excel dalam penginputan tanggal hanya memilih sebuah komponen. Komponen yang digunakan yaitu DateTimePicker

Form Calender Atau Tanggal Pengganti DateTimePicker 

Memang secara default komponen DateTimePicker ini tidak termasuk kedalam control bawan microsoft excel yang berada pada file library FM20.dll. Jika Library tersebut belum tertanam langsung saat install office, kamu bisa menambahkan komponen MSCOMCT2.OCX. untuk filenya bisa kamu dapatkan di Google.com.

Kunjungi Juga: Cara Membuat Aplikasi Penjualan V.1

Setelah ocx tersebut anda download, selanjutnya silahkan diregister  terlebih dulu dan install dengan regsrv32 pada perangkat komputer yang kamu gunakan.

Masalah Menambahkan DateTimePicker Pada OS 32 bit dan 64-bit

Tapi, sayangnya kadang-kadang library yang kita install tadi tidak serta merta berjalan mulus pada Sistem Operasi baik itu 32 bit dan 64 bit. Informasi berkembang MSCOMCT2.OCX ini sulit ditambahkan pada sistem operasi 64-bit.

Meskipun sudah diinstall, komponen DateTimePicker ini tidak akan muncul pada control box Visual Basic Editor. dikarnakan library ini tidak kompatibel dan sudah lama tidak ada updatetannya.

Dan bilamana kamu berhasil menginstallnya, komponen tersebut tidak akan langsung muncul pada Control Toolbox. Jika ingin menampilkannya kamu harus menambahkannya lewat Additional Controls.

Mungkin sebagian kamu pernah mengalami  muncul error seperti dibawah ini (Could not load an object because it is not available on this machine).

Cara Membuat Calender Tanggal Pada Userform Vba Excel

Muncul error dikarnakan ketika aplikasi buatan kita menggunakan ocx (DateTimePicker) atau ocx yang lainnya yang belum terpasang pada komputer lain, maka akan menyebabkan pesan error seperti gambar diatas.

Kunjungi Juga: Cara Membuat Form Settingan Printer di Vba Excel

Mengetahui Library ActiveX Control Belum Terpasang

Untuk mengetahui Library ActiveX Control yang belum terpasang pada perangkat komputer yang sedang kamu gunakan. silahkan lihat pada menu Tools References bisa anda lihat seperti dibawah ini.

Cara Membuat Calender Tanggal Pada Userform Vba Excel

Pada yang ditandai garis biru yang diawali teks (MISING:.....) menunjukkan ActiveX Control tersebut belum terpasang pada perangkat komputer kamu. Silahkan kamu lihat pada Location: disitu terlihat yang menunjukkan bahwasannya nama dari ActiveX Control /library pada lokasi tersebut belum terpasang.

Dari banyak permasalahan tersebut diatas disini saya bermaksud akan memberikan solusi untuk cara membuat dan menampilkan Calender di vba excel. Form tanggal/kalender ini merupakan Form VBA biasa tanpa perlu instalasi tambahan dan kamu bisa langsung gunakan dan tidak akan menyebabkan error jika dibuka pada komputer lain.

Cara Membuat Tanggal/Kalender di Vba Excel

Form Calender ini lebih baik daripada menggunakan DateTimePicker.  Karna, tampilannya lebih bagus dan bisa di gunakan dengan hasil yang lebih baik pada OS Excel versi berapapun.

Kelebihan Membuat Form Tanggal/Calender di Vba Excel

  1. Form Calender ini dibuat menggunakan UserForm biasa sehingga untuk pengunaan nya tidak perlu lagi menginstall library.
  2. Aplikasi tetap jalan jika di buka pada perangkat komputer dengan OS Office yang berbeda tanpa ada pesan error. 

Berikut  3 Tampilan Calender Form Vba Excel

Cara Membuat Calender Tanggal Pada Userform Vba Excel
Form Calender Vba Excel

Untuk mendapatkan Form Calendar ini, silahkan download pada Link di bawah ini.

NAMA APLIKASI LOKASI DOWNLOAD
Multi Calender Form Vba Excel DOWNLOAD FILE

Cara Menggunakan Form Calender VBA

Input Coding

Setelah File diatas berhasil di download, untuk penggunaan Form Calendar Ini silahkan kamu input coding di bawah ini melalui Visual Basic Editor, Caranya:

Pertama, silahkan buka File Multi Calendar, kemudian buka Module1 dan silahkan copas coding dibawah ini.

1. Coding Module:

Sub BasicCalendar()
dateVariable = CalendarForm.GetDate
If dateVariable <> 0 Then Range("H16") = dateVariable
End Sub

Sub AdvancedCalendar()
dateVariable = CalendarForm.GetDate( _
SelectedDate:=Range("H34").value, _
FirstDayOfWeek:=Monday, _
DateFontSize:=12, _
TodayButton:=True, _
OkayButton:=True, _
ShowWeekNumbers:=True, _
BackgroundColor:=RGB(243, 249, 251), _
HeaderColor:=RGB(147, 205, 2221), _
HeaderFontColor:=RGB(255, 255, 255), _
SubHeaderColor:=RGB(223, 240, 245), _
SubHeaderFontColor:=RGB(31, 78, 120), _
DateColor:=RGB(243, 249, 251), _
DateFontColor:=RGB(31, 78, 120), _
TrailingMonthFontColor:=RGB(155, 194, 230), _
DateHoverColor:=RGB(223, 240, 245), _
DateSelectedColor:=RGB(202, 223, 242), _
SaturdayFontColor:=RGB(0, 176, 240), _
SundayFontColor:=RGB(0, 176, 240), _
TodayFontColor:=RGB(0, 176, 80))
If dateVariable <> 0 Then Range("H34") = dateVariable
End Sub

Sub AdvancedCalendar2()
dateVariable = CalendarForm.GetDate( _
SelectedDate:=Range("H61").value, _
DateFontSize:=11, _
TodayButton:=True, _
BackgroundColor:=RGB(242, 248, 238), _
HeaderColor:=RGB(84, 130, 53), _
HeaderFontColor:=RGB(255, 255, 255), _
SubHeaderColor:=RGB(226, 239, 218), _
SubHeaderFontColor:=RGB(55, 86, 35), _
DateColor:=RGB(242, 248, 238), _
DateFontColor:=RGB(55, 86, 35), _
SaturdayFontColor:=RGB(55, 86, 35), _
SundayFontColor:=RGB(55, 86, 35), _
TrailingMonthFontColor:=RGB(106, 163, 67), _
DateHoverColor:=RGB(198, 224, 180), _
DateSelectedColor:=RGB(169, 208, 142), _
TodayFontColor:=RGB(255, 0, 0), _
DateSpecialEffect:=fmSpecialEffectRaised)
If dateVariable <> 0 Then Range("H61") = dateVariable
End Sub

2. Coding UserForm

Setelah coding modul di masukkan, selanjutnya buka UserForm1 silahkan double klik tombol CommandButton1 dan masukkan coding berikut.

Private Sub CommandButton1_Click()
dateVariable = CalendarForm.GetDate
If dateVariable <> 0 Then TextBox1 = Format(dateVariable, "dd mmmm yyyy")
End Sub

Keterangan: Variable diatas (dateVariable = CalendarForm.GetDate) adalah Sebuah Variable atau Control yang ingin diisi Tanggal. Misalnya kamu ingin mengisi tanggal pada teksbox.

Pada CommandButton2 silahkan copas coding berikut.

Private Sub CommandButton2_Click()
dateVariable = CalendarForm.GetDate( _
SelectedDate:=TextBox2.value, _
FirstDayOfWeek:=Monday, _
DateFontSize:=12, _
TodayButton:=True, _
OkayButton:=True, _
ShowWeekNumbers:=True, _
BackgroundColor:=RGB(243, 249, 251), _
HeaderColor:=RGB(147, 205, 2221), _
HeaderFontColor:=RGB(255, 255, 255), _
SubHeaderColor:=RGB(223, 240, 245), _
SubHeaderFontColor:=RGB(31, 78, 120), _
DateColor:=RGB(243, 249, 251), _
DateFontColor:=RGB(31, 78, 120), _
TrailingMonthFontColor:=RGB(155, 194, 230), _
DateHoverColor:=RGB(223, 240, 245), _
DateSelectedColor:=RGB(202, 223, 242), _
SaturdayFontColor:=RGB(0, 176, 240), _
SundayFontColor:=RGB(0, 176, 240), _
TodayFontColor:=RGB(0, 176, 80))
If dateVariable <> 0 Then TextBox2.value = Format(dateVariable, "dd mmmm yyyy")
End Sub

Pada CommandButton3 silahkan copas coding berikut.

Private Sub CommandButton3_Click()
dateVariable = CalendarForm.GetDate( _
SelectedDate:=TextBox3.value, _
DateFontSize:=11, _
TodayButton:=True, _
BackgroundColor:=RGB(242, 248, 238), _
HeaderColor:=RGB(84, 130, 53), _
HeaderFontColor:=RGB(255, 255, 255), _
SubHeaderColor:=RGB(226, 239, 218), _
SubHeaderFontColor:=RGB(55, 86, 35), _
DateColor:=RGB(242, 248, 238), _
DateFontColor:=RGB(55, 86, 35), _
SaturdayFontColor:=RGB(55, 86, 35), _
SundayFontColor:=RGB(55, 86, 35), _
TrailingMonthFontColor:=RGB(106, 163, 67), _
DateHoverColor:=RGB(198, 224, 180), _
DateSelectedColor:=RGB(169, 208, 142), _
TodayFontColor:=RGB(255, 0, 0), _
DateSpecialEffect:=fmSpecialEffectRaised)
If dateVariable <> 0 Then TextBox3.value = Format(dateVariable, "dd mmmm yyyy")
End Sub

Coding UserForm Initialize (Tampil Data)

Private Sub UserForm_Initialize()
TextBox1.value = Format(Now(), "dd mmmm yyyy")
TextBox2.value = Format(Now(), "dd mmmm yyyy")
TextBox3.value = Format(Now(), "dd mmmm yyyy")
End Sub

Cara ini sebagai alternatif untuk pengganti bagi teman-teman yang kesulitan menampilkan atau menambahkan komponen DateTimePicker pada VBA Excel. 

Kunjungi Juga: Cara Membuat Pencarian Data Pada ListBox Vba Excel

Jika kamu tak ingin ribet silahkan download langsung dibawah ini. 

NAMA APLIKASI LOKASI DOWNLOAD
Multi Calender Succes Vba Excel DOWNLOAD FILE

Sekian dulu, Itulah Cara Menampilkan Calender/Tanggal Pada Userform Vba Excel. Jika ada kesalahan silahkan tingalkan komentarnya pada kolom yang sudah tersedia di bawah.

Terima Kasih 


Share This

SD IT Nurul Jannah, adalah sekolah dasar berbasis islam yang merangkum antara pendidikan formal atau umum dengan pendidikan agama secara menyeluruh, sehingga harapan kami nanti, mampu menciptakan generasi yang mandiri, cerdas, serta berahklakul karimah

0 Comments:

Berminat ingin menjadi penulis disini, silahkan kirimkan alamat email anda melalui halaman kontak kami.