James is right, that's a great site, that's where I pulled the code from for disabling the close button. I didn't even change the comments.
Anyway, here's the code to get rid of the X button.
<pre>
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 Const GWL_STYLE As Long = (-16) 'The offset of a window's style
Private Const WS_SYSMENU As Long = &H80000 'Style to add a system menu
Private Sub UserForm_Initialize()
RemoveCloseButton
End Sub
Private Sub RemoveCloseButton()
Dim iStyle As Long
Dim hWndForm As Long
If Val(Application.Version) < 9 Then
hWndForm = FindWindow("ThunderXFrame", Me.Caption) 'XL97
Else
hWndForm = FindWindow("ThunderDFrame", Me.Caption) 'XL2000
End If
'Get the basic window styles
iStyle = GetWindowLong(hWndForm, GWL_STYLE)
iStyle = iStyle And Not WS_SYSMENU
'Set the basic window styles
SetWindowLong hWndForm, GWL_STYLE, iStyle
End Sub</pre>
HTH