Excel Pro penyedia aplikasi gratis & premium

Informasi dan keluhan Pelanggan 082131107010 (WA / SMS)

Excel Pro

Lakukan pembayaran melalui akun

Excel Pro

Order Aplikasi Baru Langsung pada kami

Userform VBA Exce

Userform VBA Excel - Pengertian Userform menurut programmer adalah Userform merupakan sebuah kotak jendela yang dapat digunakan sebagai tampilan aplikasi pengguna, sehingga dengan userform memungkinkan untuk mendesain sebuah tampilan aplikasi sesuai dengan kreasi dan keinginan sendiri. Coba baca kembali ulasan pertama tentang Userform dilink ini Userform VBA Exce

Postingan ini bisa dikatakan sebagai postingan lanjutan uguna memperdalam pengetahuan kita tentang userform, pada kesempatan kali ini saya akan memngajak anda untuk membahas userform dengan seabrek tips seperti membuat background userform dengan gambar (Wallpaper), membuat userform transparant, membuat userform menjadi flate, membuat userform memiliki tombol minimize, Restore down, dan maximize, dengan tips tips ini semoga Userform Excel VBA mempunyai tampilan lebih menarik

Membuat Wallpaper dengan Userform Excel VBA

Selain bisa mengganti Backgroud Userform Excel VBA dengan warna palet yang telah disediakan Excel, Backgroud Userform Excel VBA juga bisa diganti dengan gambar sesuai kemauan kita, caranyapun cukup mudah, sediakan gambar yang akan dijadikan Wallpaper, format gambar adalah (.bmp dan .jpg atau .gif), anda bisa lihat properties dibelah kiri userform anda , pilih Picture lalu browse gambar yang telah disiapkan pilih OK, lihat gambar dibawah ini



Agar gambar sesuai dengan ukuran Userform, atur bagian Picture Size Mode menjadi fm Picture Size Mode Stretch.

Jika anda ingin menampilkan beberapa gambar sekaligus maksudnya anda ingin gonta ganti gambar tanpa membongkar properties pada userform, maka caranya juga cukup mudah. Ambil kontrol Image pada kotak toolbox misal saya ambil 3 kontrol Image, Masing masing kontrol image masukan gambar yang berbeda, coba perhatikan gambar dibawah ini



Masukan kode macro dibawah ini kedalam Userform, setelah selsai silahkan dicoba klik klik masing masing gambar
Private Sub Image1_Click()
UserForm1.Picture = Image1.Picture
End Sub
Private Sub Image2_Click()
UserForm1.Picture = Image2.Picture
End Sub
Private Sub Image3_Click()
UserForm1.Picture = Image3.Picture
End Sub

Jika anda berhasil, maka background userform akan mengikuti gambar yang anda pilih.
Masalahnya satu, jika userform tidak aktif maka gambar akan kembali kesemula saat userform kembali diaktifkan (Tidak sesuai pilihan gambar yang kita klik tadi), untuk mengatasi hal ini caranya juga tidak susah suah amat, ganti saja seluruh kode macro yang ada didalam userform dengan kode macro dibawah ini

Private Sub Image1_Click()
UserForm1.Picture = Image1.Picture
Sheets("Sheet1").Range("A1").Value = "Image1"
End Sub
Private Sub Image2_Click()
UserForm1.Picture = Image2.Picture
Sheets("Sheet1").Range("A1").Value = "Image2"
End Sub
Private Sub Image3_Click()
UserForm1.Picture = Image3.Picture
Sheets("Sheet1").Range("A1").Value = "Image3"
End Sub
Private Sub UserForm_Activate()
If Sheets("Sheet1").Range("A1").Value = "Image1" Then
UserForm1.Picture = Image1.Picture
ElseIf Sheets("Sheet1").Range("A1").Value = "Image2" Then
UserForm1.Picture = Image2.Picture
ElseIf Sheets("Sheet1").Range("A1").Value = "Image3" Then
UserForm1.Picture = Image3.Picture
End If
End Sub

Sampai disini selesai sudah cara embuat Wallpaper, masih penasaran silakan download sampelnya dibawah ini

Download - Userform Excel VBA Transparan

Membuat Userform Excel VBA Transparan

Wah yang satu ini agak panjang kode macronya, tapi tidak apa apa saya akan tuntun anda untuk membuat userform menjadi Transparan, langkah langkahnya sebagai berikut



Gunakan Userform yang kita bahas sebelumnya diatas, lalu sisipkan atau tambahka kode macro dibawah ini kedalam jendela kode userform

Private Declare Function GetActiveWindow Lib "USER32" () As Long
Private Declare Function SetWindowLong Lib "USER32" _
Alias "SetWindowLongA" ( _
ByVal hWnd As Long, ByVal lngWinIdx As Long, _
ByVal dwNewLong As Long) As Long'ExcelPro
Private Declare Function GetWindowLong Lib "USER32" _
Alias "GetWindowLongA" ( _
ByVal hWnd As Long, ByVal lngWinIdx As Long) As Long'ExcelPro
Private Declare Function SetLayeredWindowAttributes Lib "USER32" ( _
ByVal hWnd As Long, ByVal crKey As Integer, _
ByVal bAlpha As Integer, ByVal dwFlags As Long) As Long'ExcelPro
Private Const WS_EX_LAYERED = &H80000'ExcelPro
Private Const LWA_COLORKEY = &H1'ExcelPro
Private Const LWA_ALPHA = &H2'ExcelPro
Private Const GWL_EXSTYLE = &HFFEC'ExcelPro
Dim hWnd As Long

Private Sub BuatSamar(ByVal intLevel As Integer)
On Error Resume Next
Dim lngWinIdx As Long
hWnd = GetActiveWindow
lngWinIdx = GetWindowLong(hWnd, GWL_EXSTYLE)
SetWindowLong hWnd, GWL_EXSTYLE, lngWinIdx Or WS_EX_LAYERED
SetLayeredWindowAttributes hWnd, 0, (255 * intLevel) / 100, LWA_ALPHA
End Sub

Private Sub ScrollBar1_Change()
Call BuatSamar(ScrollBar1.Value)
UserForm1.Caption = ScrollBar1.Value
End Sub

Private Sub UserForm_Activate()
ScrollBar1.Max = 100
ScrollBar1.Min = 5
ScrollBar1.Value = 50
End Sub

Private Sub UserForm_Click()
ScrollBar1.Value = 50
End Sub

Module diatas bukan buatan saya sendiri :) , tapi saya sudah mencobanya dan berhasil loh, sekedar info tipa membuat userform menjadi Transparan ini hanya berlaku di office bersistem 32 bit

Sekarang kembali ke userform, tambahkan kontrol ScrollBar, ScrollBar dugunakan untuk mengatur tingkat Transparan userform

Download - Wallpaper dengan Userform Excel VBA

Membuat Userform Excel VBA mempunyai Tombol Minimize dan Maximize




Seperti yang kita ketahui bersama sama, tampilan defauld userform Excel VBA hanya mempunyai satu tombol yaitu tombol X yang terletak dibagian kanan atas, tombol ini berguna untuk menutup dan menyembunyikan Userform
Nah bagaimana caranya menambahkan tombolo Maximize dan minimize ? Maximize berguna untuk membuat tampilan userform menjadi full sesuai ukuran layar monitor anda, sedangkan Minimize berguna untuk menyembuyikan (Tanpa menutup userform) Userform. SIlahkan ikuti kembali langkah langkah berikut ini

Tambahkan kode ini kedalam userform, jika sebelumya sudah terdapat deklarasi semisal, maka silahkan hapus dulu kode tersebut
Private Declare Function FindWindow Lib "User32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowLong Lib "User32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long'ExcelPro
Private Declare Function SetWindowLong Lib "User32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function ShowWindow Lib "User32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long'ExcelPro
Private Const GWL_STYLE As Long = -16'ExcelPro
Private Const GWL_EXSTYLE As Long = -20'ExcelPro
Private Const WS_MINIMIZEBOX As Long = &H20000
Private Const WS_MAXIMIZEBOX As Long = &H10000
Private Const WS_EX_APPWINDOW As Long = &H40000'ExcelPro
Private Const SW_SHOW As Long = 5
Private Const WS_VISIBLE As Long = &H10000000
Private Const WS_POPUP As Long = &H80000000&

Pada bagian userform aktif, silahkan tambahkan kode macro dibawah ini
Private Sub UserForm_Activate()
Dim lHwnd As Long, lForm_1 As Long, lForm_2 As Long
If Val(Application.Version) < 9 Then lHwnd = FindWindow("ThunderXFrame", Me.Caption) Else lHwnd = FindWindow("ThunderDFrame", Me.Caption) End If lForm_1 = GetWindowLong(lHwnd, GWL_STYLE) lForm_2 = lForm_1 Or WS_MINIMIZEBOX Or WS_MAXIMIZEBOX lForm_2 = lForm_2 And Not WS_VISIBLE And Not WS_POPUP'ExcelPro SetWindowLong lHwnd, GWL_STYLE, lForm_2'ExcelPro lForm_1 = GetWindowLong(lHwnd, GWL_EXSTYLE)'ExcelPro lForm_2 = lForm_1 Or WS_EX_APPWINDOW'ExcelPro SetWindowLong lHwnd, GWL_EXSTYLE, lForm_2'ExcelPro ShowWindow lHwnd, SW_SHOW'ExcelPro End Sub


Sip pasti berhasil jika office anda memakai sistem 32 bit

Download - Userform Excel VBA Minimize dan Maximize

Masih menyisakan satu lagi yaitu membuat tampilan userform menjadi flate, dengan tampilan ini maka semua tombol baik tombol close minimize dan maximize akan dihilangkan, tidak hanya itu userform juga tidak bisa digeser geser sebagaimana userform biasanya. Untuk menjadikan userform menjadi Flate silahkan ganti semua kode diatas dengan kode dibawah ini
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Private Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As Long) As Long
Sub HapusJudulUserForm(oUserForm As Object)
Dim l As Long, lHwndForm As Long
If Val(Application.Version) < 9 Then lHwndForm = FindWindow("ThunderXFrame", oUserForm.Caption) Else lHwndForm = FindWindow("ThunderDFrame", oUserForm.Caption) End If l = GetWindowLong(lHwndForm, -16) l = l And Not &HC00000 SetWindowLong lHwndForm, -16, l DrawMenuBar lHwndForm End Sub Private Sub UserForm_Initialize() Call HapusJudulUserForm(UserForm1) End Sub


Sip pasti berhasil jika office anda memakai sistem 32 bit

Download - Usserform flate

Demikianlah kiranya penjelsan tentang teori Userform VBA Exce, semoga bermanfaat bagi kita semua. Ingat share artikel ini ya atau komentarlah jika ada yang ingin ditanyakan, kalau ndak ada yang ingin ditanyakan ya bookmark saja www.excelpro.id ini yang merupakan tempat belajar microsoft excel VBA terbaik. Follow IG admin linknya ada dibawah sono...... Terimakasih selamat pagi

Order Aplikasi Murah dengan design premium Info Disini

Microsoft Excel :

Disqus Comments

ABOUT

Tentang Admin & Blog
About

CONTACT

Hubungi kami disini
Hubungi

PAYMENT

Cara pembelian di ExcelPro
Pembayaran

Advertise

Pasang iklan Anda di Blog kami
Advertise

EXCEL PRO

Excel Pro | Merupakan Lanjutan Versi dari situs lama kami www.iparengan.com | Semoga dengan nama baru ini kami bisa menjadi lebih baik

DAPATKAN ARTIKEL EXCEL PRO VIA EMAIL