![]() |
Tipp 0320
|
UserForm verschieben verhindern
|
 |
|
Autor/Einsender: Datum: |
|
Angie 17.03.2003 |
|
Entwicklungsumgebung: |
|
Excel 97 |
|
|
Um zu verhindern, dass eine UserForm verschoben werden kann, muss das Menü 'Verschieben'
entfernt werden. Dieses Beispiel zeigt, wie man das mit Hilfe von API-Funktionen
bewerkstelligen kann.
|
|
Code im Codebereich der UserForm |
|
|
Option Explicit
Private Declare Function FindWindow Lib "user32" Alias _
"FindWindowA" (ByVal lpClassName As String, ByVal _
lpWindowName As String) As Long
Private Declare Function GetSystemMenu Lib "user32" (ByVal _
hwnd As Long, ByVal bRevert As Long) As Long
Private Declare Function DeleteMenu Lib "user32" (ByVal _
hMenu As Long, ByVal nPosition As Long, ByVal wFlags _
As Long) As Long
Private Const MF_BYCOMMAND = &H0
Private Const SC_MOVE = &HF010
Private Sub UserForm_Activate()
Dim hwndForm As Long
Dim hwndMenu As Long
hwndForm = FindWindow(vbNullString, Me.Caption)
If hwndForm <> 0 Then
hwndMenu = GetSystemMenu(hwndForm, 0)
If hwndMenu <> 0 Then
DeleteMenu hwndMenu, SC_MOVE, MF_BYCOMMAND
End If
End If
End Sub
|
|
|
|
|
|
Die im Download befindliche *.frm-Datei kann für Word und PowerPoint im
jeweiligen Programm im VB-Editor importiert werden.
|
|
Windows-Version |
95 |
 |
|
98/SE |
 |
|
ME |
 |
|
NT |
 |
|
2000 |
 |
|
XP |
 |
|
Vista |
 |
|
Win
7 |
 |
|
|
Anwendung/VBA-Version |
Access 97 |
 |
Access 2000 |
 |
Access XP |
 |
Access 2003 |
 |
Access 2007 |
 |
Access 2010 |
 |
|
Excel 97 |
 |
Excel 2000 |
 |
Excel XP |
 |
Excel 2003 |
 |
Excel 2007 |
 |
Excel 2010 |
 |
|
Word 97 |
 |
Word 2000 |
 |
Word XP |
 |
Word 2003 |
 |
Word 2007 |
 |
Word 2010 |
 |
|
PPT 97 |
 |
PPT 2000 |
 |
PPT XP |
 |
PPT 2003 |
 |
PPT 2007 |
 |
PPT 2010 |
 |
|
Outlook 97 |
 |
Outlook 2000 |
 |
Outlook XP |
 |
Outlook 2003 |
 |
Outlook 2007 |
 |
Outlook 2010 |
 |
|
|
|
Download (13,2 kB)
|
Downloads bisher: [ 1084 ]
|
|
|