Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
160to164
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
160to164
160to164
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Exel Schliesen

Exel Schliesen
16.09.2002 19:14:47
Frank
Wie kann man verhindern das man Exel über Alt+F4 oder andere Funktionen des Fenstertitels wie z.B. X Schliesen kann?

Vielen Dank im vorraus

Frank

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Exel Schliesen
16.09.2002 20:03:07
Herbert
'In ein Modul

Option Explicit
Public Const GWL_STYLE = (-16)
Public Const WS_SYSMENU = &H80000

Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As StringByVal lpWindowName As StringAs Long
Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As LongByVal nIndex As LongAs Long
Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As LongByVal nIndex As LongByVal dwNewLong As LongAs Long
Declare Function DrawMenuBar Lib "user32" (ByVal hWnd As LongAs Long

Sub Hide_SYSMENU()
Dim xl_hwnd, lStyle
xl_hwnd = FindWindow("xlmain", vbNullString)
If xl_hwnd <> 0 Then
lStyle = GetWindowLong(xl_hwnd, GWL_STYLE)
lStyle = SetWindowLong(xl_hwnd, GWL_STYLE, lStyle And Not WS_SYSMENU)
DrawMenuBar xl_hwnd
End If
End Sub

Sub Show_SYSMENU()
Dim xl_hwnd, lStyle
xl_hwnd = FindWindow("xlmain", vbNullString)
If xl_hwnd <> 0 Then
lStyle = GetWindowLong(xl_hwnd, GWL_STYLE)
lStyle = SetWindowLong(xl_hwnd, GWL_STYLE, lStyle Or WS_SYSMENU)
DrawMenuBar xl_hwnd
End If
End Sub

'In "Diese Arbeitsmappe"

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.OnKey "%{F4}"
Call Show_SYSMENU
End Sub

Private Sub Workbook_Open()
Application.OnKey "%{F4}", ""
Call Hide_SYSMENU
End Sub

 gruß Herbert



Anzeige
Schön, aber...
16.09.2002 20:28:22
L.Vira
Wenn Änderungen an der Mappe gemacht wurden und der user
die Abfrage mit Abbrechen beantwortet, ist das Schließkreuz wieder da und Alt+F4 funktioniert auch wieder.
Ja,stimmt....
16.09.2002 21:41:19
Herbert
wenn man das anwenden will,muß man sich halt Gedanken machen
wie man das Fenster verhindert,
oder wie man nach "Abbrechen" die Schaltflächen gleich wieder ausblendet bzw.die Tastenkombin. wieder deaktiviert...
gruß Herbert
War ja eigentlich auch...
16.09.2002 22:58:04
L.Vira
gar nicht gefragt, nur mal so eine Anmerkung...
vielleicht ...
16.09.2002 23:17:01
Herbert
...reicht ihm ja diese Lösung...
vielen dank...
17.09.2002 09:21:13
Frank
Die Lösung ist ausreichend da die Arbeitsblatt-Menüleiste nicht Sichtbar ist und Excel über eine Befehlsschaltfläche Beendet wird.
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige