Showing posts with label Visual Basic Editor. Show all posts
Showing posts with label Visual Basic Editor. Show all posts

MultiPage Kontrol

May 17, 2019 Add Comment

Gunakan MultiPage Control untuk bekerja dengan banyak informasi yang dapat diurutkan ke beberapa kategori. 

MultiPage Control  yang terdiri dari satu atau lebih halaman benda yang masing-masing berisi kumpulan kontrol. 

Kamu bisa mengatur halaman aktif pemrograman dengan menyetel nilai properti MultiPage Control . 

Bagaimana Mengontrol MultiPage Control Pemrograman ?

Untuk menambahkan MultiPage Control dan kendalikan dengan menggunakan makro, ikuti langkah berikut:
  1. Memulai Excel, dan kemudian membuka buku kerja kosong baru.
  2. Pada Tool Menu, Klik Macro, lalu klik Visual Basic Editor.
  3. Pada Masuk ke Menu, klik UserForm untuk memasukkan UserForm di kerja Anda.
  4. Tambahkan MultiPage Control untuk UserForm.
  5. Tambahkan sebuah Label Control untuk Page1 pada MultiPage Control.
  6. Menambah TextBox Control untuk Page1 pada MultiPage Control.
  7. Pada MultiPage Control, klik Page2, kemudian ulangi langkah 5 dan 6 untuk menambahkan sebuah Label Control dan TextBox Control.
  8. klik ganda MultiPage Control untuk membuka Windows Code untuk MultiPage Control.
  9. Di jendela kode, ketik kode berikut untuk MultiPage1 perubahan acara:
Private Sub MultiPage1_Change() 
Select Case MultiPage1.Value 
 ' If activating Page1... 
Case 0
       Label1.Caption = TextBox2.Text 
       TextBox1.Text = "" 
 ' If activating Page2... 
Case 1
        Label2.Caption = TextBox1.Text 
        TextBox2.Text = "" 
End Select 
End Sub

   10  Di Windows Code, ketik kode berikut untuk acara UserForm menginisialisasi :

Private Sub UserForm_Initialize()
' Force Page1 to be active when UserForm is displayed.
MultiPage1.Value = 0
Label1.Caption = ""
End Sub


   11. Pada Menjalankan Menu, klik Menjalankan Sub UserForm.
Dalam kontrol TextBox di Page1, ketik Tes. Ketika Anda Klik Page2 tab, TextBox2 dibersihkan, dan keterangan dari Label2 perubahan ke entri yang Anda buat di TextBox1 di Page1 ("Test").

Membuat Interface Wizard Menggunakan Kontrol MultiPage

Ketika tugas yang memerlukan beberapa langkah-langkah bertahap, antarmuka wizard dapat menjadi sangat efektif. Anda dapat menggunakan MultiPage Control untuk membuat Interface Wizard bukan menggunakan beberapa UserForms.

Contoh ini memanipulasi MultiPage Control yang memiliki tiga halaman. Prosedur yang melekat pada Inisialisasi UserForm adalah menonaktifkan Page2 dan Page3, dan Page1 MultiPage Control yang aktif.

Catatan : 
Ketika Anda mengindeks halaman MultiPage kontrol dengan menggunakan kumpulan halaman , halaman pertama dalam koleksi adalah halaman nol. Ini prosedur juga menetapkan judul CommandButtonkontrol dan menonaktifkan <> tombol tekan.
Prosedur yang ditetapkan untuk Klik CommandButton1 Control fungsi <> tombol tekan. Prosedur yang ditetapkan untuk Klik acara CommandButton2 kontrol fungsi berikutnya mengatakan tombol tekan.
Untuk membuat antarmuka wizard dengan menggunakan kontrol MultiPage , ikuti langkah berikut:
  1. Memulai Excel, dan kemudian membuka Workbook kosong yang baru.
  2. Pada Menu Developer, klik Visual Basic Editor.
  3. Pada Menu Insert di Visual Basic Editor, klik UserForm untuk memasukkan UserForm di Visual Basic Editor.
  4. Tambahkan MultiPage Control pada UserForm.
  5. Klik kanan-atas Tab Page1, dan kemudian klik New Page untuk menambahkan Page3 ke MultiPage Control.
  6. Tambahkan CommandButton Control ke atas UserForm di luar MultiPage control. Ulangi langkah ini untuk menambahkan CommandButton Control ke atas kedua UserForm.
  7. klik ganda UserForm untuk membuka kode jendela untuk UserForm.
  8. Di jendela kode, ketik kode berikut untuk acara UserForm menginisialisasi :
Private Sub UserForm_Initialize()
With MultiPage1
' The next 2 lines disable Page2 & Page3.
   .Pages(1).Enabled = False
   .Pages(2).Enabled = False
' Make Page1 the active page.
   .Value = 0
End With
' Set the caption on the CommandButtons.
CommandButton1.Caption = "<Back"
CommandButton1.Enabled = False
CommandButton2.Caption = "Next>"
End Sub
' Procedure for the "<Back" button
Private Sub CommandButton1_Click()
Select Case MultiPage1.Value
Case 1                                                              ' If Page2 is active...
With MultiPage1
   .Pages(0).Enabled = True                                ' Enable Page1.
   .Value = MultiPage1.Value - 1                          ' Move back 1 page.
  .Pages(1).Enabled = False                                ' Disable Page2.
End With
CommandButton1.Enabled = False                     ' Disable Back button.
Case 2                                                               ' If Page3 is active...
With MultiPage1
   .Pages(1).Enabled = True                                ' Enable Page2.
   .Value = MultiPage1.Value - 1                          ' Move back 1 page.
   .Pages(2).Enabled = False                               ' Disable Page3.
CommandButton2.Caption = "Next>"
End With
End Select
End Sub


' Procedure for the "Next>" button
Private Sub CommandButton2_Click()
Select Case MultiPage1.Value
Case 0                                                               ' If Page1 is active...
With MultiPage1
     .Value = MultiPage1.Value + 1                        ' Move forward 1 page.
     .Pages(1).Enabled = True                               ' Enable Page2.
    .Pages(0).Enabled = False                               ' Disable Page1.
End With
CommandButton1.Enabled = True                        ' Enable Back button.
Case 1                                                                ' If Page2 is active...
With MultiPage1
     .Value = MultiPage1.Value + 1                         ' Move forward 1 page.
     .Pages(2).Enabled = True                                ' Enable Page3.
     .Pages(1).Enabled = False                               ' Disable Page2.
End With
CommandButton2.Caption = "Finish"                  ' Change Next button to Finish.
Case 2                                                                ' If Page3 is active...
     MsgBox "Finished!"                                         ' User is Finished.
     Unload Me                                                     ' Unload the UserForm.
End Select
End Sub 


Pada Menu Run, klik Run Sub UserForm.
Ketika Anda mengklik Berikutnya mengatakan Page2 diaktifkan dan The <> tombol tekan akan tersedia. Ketika Anda mengklik Berikutnya mengatakan kedua kalinya, Page3 diaktifkan dan keterangan untuk CommandButton2 perubahan "Selesai".

http://anisahharahap55.blogspot.com/search?q=Kontrol+multipage

Membuat Tanggal Dan Waktu dengan VBA Excel

April 28, 2019 Add Comment


Contoh VBA Excel kali ini akan sedikit mengajak kita bersenang-senang, karena pada ulasan kali ini kita akan belajar bagaimana memasukkan tanggal dan waktu menggunakan script di VBA. 

VBScript tentang tanggal dan waktu ini membantu para pengembang untuk mengubah tanggal dan waktu dari satu format ke format yang lain atau untuk mengungkapkan tanggal atau waktu yang sesuai dengan kondisi tertentu. Penasaran bagaimana cara membuatnya? ikuti prosedur berikut.

Masukkan barisan kode di bawah ini pada worksheet Anda dan eksekusi kodenya. Untuk mengeksekusi baris kode, klik tombol command button pada sheet Anda. Makro berikut ini akan memberikan tahun dan tanggal. 

Untuk mendeklarasikan tanggal, gunakan pernyataan Dim. Untuk menginisialisasi tanggal, gunakan fungsi datevalue.
Dim exampleDate As Date
exampleDate = DateValue(“Jun 19, 2010”)
MsgBox Year(exampleDate)

Hasil yang akan Anda dapatkan :



Untuk menambahkan hari dan tanggal, gunakan fungsi DateAdd. Fungsi DateAdd memiliki tiga argumen. Isi “d” untuk menambahkan hari. Isi 3 untuk argumen kedua untuk menambah 3 hari. Argumen ketiga merupakan tanggal dimana jumlah hari akan ditambah.
Dim firstDate As Date, secondDate As Date
firstDate = DateValue(“Jun 19, 2010”)
secondDate = DateAdd(“d”, 3, firstDate)
MsgBox secondDate


Ubah “d” untuk “m” untuk menambahkan bulan ke tanggal. Tempatkan kursor pada DateAdd di Visual Basic Editor dan klik F1 untuk bantuan pada penentu interval lain. Anda bisa menggunakan format tanggal sesuai dengan keinginan Anda, apakah ingin menggunakan format Indonesia, Amerika, atau Jepang. Jenis format tergantung pada jendela Anda pengaturan waktu regional pada desktop Anda.

Untuk mendapatkan tanggal dan waktu, gunakan fungsi Now.
MsgBox Now
Hasil contoh VBA excel yang akan Anda dapatkan


Untuk mendapatkan waktu, gunakan fungsi Hour.
MsgBox Hour(Now)
Hasil yang akan Anda dapatkan


Fungsi TimeValue akan mengkonversi string ke nomor seri waktu. Nomor seri waktu adalah angka antara 0 dan 1. 

Sebagai contoh, siang (tengah hari menuju sore) akan direpresentasikan sebagai 0,5.
MsgBox TimeValue(“9:20:01 am”)
Hasil yang akan Anda dapatkan:


Sekarang, untuk melihat dengan jelas bahwa Excel menangani waktu secara internal sebagai angka antara 0 dan 1, tambahkan baris kode berikut:
Dim y As Double
y = TimeValue(“09:20:01”)
MsgBox y
Hasil yang akan Anda dapatkan:





Mengambil Nama Sheet

April 27, 2019 Add Comment

Setiap membuat laporan, saya selalu mencantumkan nama sheet yang sedang terpakai sebagai sebuah judul laporan. Karena saya menamai suatu sheet biasanya mewakili isinya. Misalnya isinya adalah laporan bulan Januari, maka saya biasa menamainya dengan Laporan Januari. 

Bisa saja saya mengetiknya satu-satu, tetapi jika dalam satu worksheet saya mempunyai 30 sheet tentunya sangat menjengkelkan jika harus mengetiknya satu persatu. Lalu saya berusaha membuat fungsi sendiri untuk membuat pekerjaan tersebut menjadi lebih enteng.

Kita akan menggunakan Visual Basic for Application (VBA) untuk membuat fungsi tersebut. 

Langkah-langkahnya sebagai berikut:

1.  Buka Microsoft Excel anda.
2.  Tekan Alt + F11 untuk membuka Visual Basic Editor, atau anda bisa juga melalui menu :
Tools -> Macro -> Visual Basic Editor.
3. Di Visual Basic Editor, click menu Insert -> Module.
4. Lalu ketikkan script seperti dibawah ini.
Function nama_sheet() 
nama_sheet = ActiveSheet.Name 
End Function
5. Tutup Visual Basic Editor dengan menekan tombol Alt + Q.
6. Lalu sorot cell yang ingin menampung nama sheet.
7. Ketikkan =nama_sheet().
8. Nama sheet anda akan terpampang di cell tersebut.

Mudah sekali kan ? Sekarang anda ngga usah mengetik nama sheet anda satu persatu secara manual. Dan jika anda merubah nama sheet anda, maka judul laporan anda akan berubah secara otomatis mengikuti nama sheet tersebut.