Sorry amigo te confundí con otra persona que hizo la misma pregunta esta es la solución que le dio Elsa:
Otra opción sería quitar ese botón 'x' de este modo:
Insertá un módulo y allí copiá las siguientes líneas (atención con el comentario)
Public Declare PtrSafe Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Declare PtrSafe Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long
Public Declare PtrSafe Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Public Declare PtrSafe Function DrawMenuBar Lib "user32" (ByVal hWnd As Long) As Long
Public Const GWL_STYLE As Long = -16&
Public Const WS_SYSMENU As Long = &H80000
'quitar el texto PtrSafe si se trabaja con 32bits
Luego en el formulario tendrás un botón de comando para salir como el que te mostré antes.
Y en el evento Initialize del userform coloca estas líneas:
Private Sub UserForm_Initialize()
Dim hWnd As Long
Dim lngWstyle As Long
hWnd = FindWindow(vbNullString, Me.Caption)
lngWstyle = GetWindowLong(hWnd, GWL_STYLE)
SetWindowLong hWnd, GWL_STYLE, lngWstyle And (Not WS_SYSMENU)
DrawMenuBar hWnd
'el resto de tus instrucciones para este evento, si tuvieras.
End Sub
La opción es smuy buena lo malo es que al presionar cancelar me deja en la misma hoja y pueden modificar todo no los envía a otro lado como se puede resolver esa situación... gracias - daniel paternina
LA solución es muy buena y sencilla, para mi la mejor - daniel pellegrini