Selasa, 28 Oktober 2014

Cara Membuat Efek Mouse Move di UserForm Excel

Rumus Excel [.] com - Efek Mouse Move di VBA Excel atau Mouse Move Event di VBA Excel adalah efek yang terjadi ketika kita menggeser mouse diatas Command Button, UserForm ataupun Label atau pada control yang telah di berikan efek mouse move event.

Dengan memberikan efek mouse move event ini sebuah Tombol Command Button akan terlihat lebih menarik dan tidak terlihat kaku.

Misalnya pada sebuah Tombol Command Button ketika normal berwarna merah kermudian ketika mouse didekatkan pada tombol tersebut, tombol tersebut berubah warna menjadi biru dan sebagainya.

Untuk membuat efek mouse move di UserForm Excel caranya sebenarnya sangat mudah, selengkapnya ikuti langkah-langkah berikut ini:

  1. Buka Aplikasi Microsoft Office Excel, kemudian setelah terbuka tekan tombol Alt+F11 pada keyboard untuk menampilkan aplikasi Microsoft Visual Basic for Application.
  2. Tambahkan Sebuah UserForm, 1 Command Button dan 2 buah Label.
  3. Aturlah posisi label1 dan Label2 bertumpuk pada posisi sejajar, samakan ukuran (Left dan Top)-nya.
  4. Tambahkan gambar pada Label1 dan Label2 dengan 2 gambar yang berbeda.
  5. Buka jendela code pada UserForm, kemudian masukkan script berikut ini:
    Private Sub CommandButton1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    With CommandButton1
        .BackColor = vbBlue
        .ForeColor = vbWhite
    End With
    End Sub
    
    Private Sub Label1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    Label2.Visible = True
    Label1.Visible = False
    End Sub
    
    Private Sub UserForm_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    With CommandButton1
        .BackColor = &H8000000F
        .ForeColor = RGB(0, 0, 0)
    End With
    Label1.Visible = True
    Label2.Visible = False
    End Sub
    
  6. Selanjutnya tekan tombol F5 untuk menjalankan UserForm. hasilnya kurang lebih seperti ini:

    Mouse Move Event in VBA Excel

Penjelasan Script VBA yang digunakan:
Private Sub CommandButton1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
With CommandButton1
.BackColor = vbBlue
.ForeColor = vbWhite
End With
End Sub
Ketika posisi mouse di geser dan berada diatas Command Button 1 maka tombol Command Button 1 warnanya berubah menjadi biru dan Warna Teksnya berubah menjadi Putih.
Private Sub Label1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label2.Visible = True
Label1.Visible = False
End Sub
Ketika posisi mouse di geser dan berada diatas Label1 maka Label2 akan ditampilkan dan Label1 akan disembunyikan. Sebelumnya Properties Label2 diubah dulu visiblenya menjadi False agar Label2 tidak di tampilkan ketika UserForm di Load.
Private Sub UserForm_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
With CommandButton1
.BackColor = &H8000000F
.ForeColor = RGB(0, 0, 0)
End With
Label1.Visible = True
Label2.Visible = False
Ketika posisi mouse di geser dan berada diatas UserForm maka warna tombol Command Button1 dan warna Teksnya di ubah kembali ke semula yakni abu-abu dan Hitam dan Label2 kembali disembunyikan serta Label1 di tampilkan kembali.
Penulisan script VBA untuk mengubah properties warna pada Command Button atau Label dan Control lainnya seperti pada BackColor atau ForeColor bisa dengan beberapa cara, misal untuk warna hitam:
  1. Dengan code warna bawaan vb seperti BackColor = &H80000012
  2. Dengan menuliskan nama warna vb seperti BackColor = vbBlack
  3. Dengan menggunakan code warna RGB seperti BackColor = RGB(0, 0, 0)

Lampiran

Tombol dengan MouseMoveEvent Excel Binary Workbook (xlsb)

Sekian tutorial cara membuat efek mouse move di UserForm Excel. Semoga Bermanfaat....
6 komentar
  1. kalau commantbuttonnya lebih dari satu gimana gan...?

    BalasHapus
    Balasan
    1. Tinggal di copas sript nya trus ganti nama commond button nya ke tombol yang kita maksudkan tadi.
      Kode warna juga bisa diganti sesuai keingginan kita.

      Hapus
  2. labelnya kok bisa dibuat round ujungnya gimana caranya?

    BalasHapus
    Balasan
    1. gunakan bantuan icon rounded rectangle

      Hapus


EmoticonEmoticon