Descobri qual era o problema! Estava usando o nome do Formulario em vez de UserForm. Mas para sumir o botão X da janela ainda não consegui, estou usando Excel 2007 com Windows 7 64 bits.
Talvez o código abaixo só funcione para sistemas 32bits:
Private Declare Function GetSystemMenu Lib "user32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long
Private Declare Function RemoveMenu Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
Public Sub RemoverBotaoFechar(ByVal hwnd As Long)
Const SC_CLOSE = &HF060
Const MF_BYCOMMAND = 0
Dim hMenu As Long
' Menu handle
hMenu = GetSystemMenu(hwnd, 0)
' Remover Botão Fechar
RemoveMenu hMenu, SC_CLOSE, MF_BYCOMMAND
End Sub
Conte Comigo!
Profissão: Programador VBA Pleno
"Para bom entendedor, meia palavra basta"
Postado : 24/11/2014 8:14 am