Tips Macro Excel Disable Tombol X Userform - Umumnya pengguna excel akan mengakses tombol X (Pada Userform) untuk menutu Userform, hal ini sudah lumrah sekali makanya dari awal saya katakan Umumnya. Pada kesempatan kali ini saya akan membagikan cara Disable Tombol Keluar "X" pada userform, jadi pengguna excel tidak akan bisa menutup userform ketika mengakses tombol X (Close,tutup, exit)

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

DISABLE TOMBOL X

Setidaknya ada 5 cara Disable Tombol X Userform, saya akan sebutkan dau cara saja, antara lain

Yang pertama Disable Tombol X Userform dengan kode macro ini

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = 0 Then
Cancel = True
End If
End Sub

Coba sekarang kode macro diatas dimodifikasi sehingga kita dapat menjalankan perintah lain saat pengguna excel mengakses tombol X pada userform, misalnya saat tombol X diakses maka akan keluar Kotak peringatan sederhana "Maaf tombol X ditiadakan oleh Admin" dan seterusnya

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = 0 Then
Cancel = True
MsgBox "Untuk menutup Form silakan klik tomblo CLOSE", vbCritical
End If
End Sub

Yang kedua Disable Tombol X Userform dengan menghilangkan tombol X
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

Demikianalh Menonaktifkan tombol "X" userform - Disable Tombol X Userform, semoga bermanfaat
No comments