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
@jose lopez Aunque no sea este caso, recomiendo que siempre miren la fecha de las respuestas.... Hubo muchos cambios de versiones y no siempre las macros funcionan para todas del mismo modo. - Elsa Matilde
ok entendido me quedo claro - jose lopez
Comentario borrado por el autor - Armando Vargas Schwarzenberg
Private Sub btn_MenPrin_Click()Resultado = MsgBox("¿ESTÁ SEGURO QUE DESEA SALIR DE LA VENTANA?", vbOKCancel + vbQuestion, "CERRANDO VENTANA") Select Case Resultado Case vbOK: Unload Me Principal.Show Case vbCancel: txt_RUTCli.SetFocus End SelectEnd SubNo veo cómo ordenar el código en el comentario, pero este es el que utilizo y que me funciona. - Armando Vargas Schwarzenberg