HERBERS Excel-Forum - die Beispiele

Thema: Excel-Menü oben links am Fenster ausblenden

Home

Gruppe

API

Problem

Wie kann ich das Excel-Menü oben links im Fenster ausblenden und im DATEI-Menü die BEENDEN-Schaltfläche deaktivieren?

Lösung
Geben Sie den nachfolgenden Code in ein Standardmodul ein und weisen Sie ihn einer Schaltfläche zu.
StandardModule: basMain

Declare Function FindWindowA Lib "User32" _
   (ByVal lpClassName As Any, _
   ByVal lpWindowName As String) As Long
Declare Function GetWindowLongA Lib "User32" _
   (ByVal hwnd As Long, ByVal nIndex As Integer) As Long
Declare Function SetWindowLongA Lib "User32" _
   (ByVal hwnd As Long, ByVal nIndex As Integer, _
   ByVal dwNewLong As Long) As Long

Global Const GWL_STYLE = (-16)
Global Const WS_SYSMENU = &H80000

Sub RemoveControlMenuExcel32()
   Dim WindowStyle As Long
   Dim hwnd As Long
   Dim WindowName As String
   Dim result
   WindowName = Application.Caption
   hwnd = FindWindowA(0&, WindowName)
   WindowStyle = GetWindowLongA(hwnd, GWL_STYLE)
   WindowStyle = WindowStyle And (Not WS_SYSMENU)
   result = SetWindowLongA(hwnd, GWL_STYLE, WindowStyle)
End Sub

Sub RestoreControlMenuExcel32()
   Dim WindowStyle As Long
   Dim hwnd As Long
   Dim WindowName As String
   Dim result
   WindowName = Application.Caption
   hwnd = FindWindowA(0&, ByVal WindowName)
   WindowStyle = GetWindowLongA(hwnd, GWL_STYLE)
   WindowStyle = WindowStyle Or WS_SYSMENU
   result = SetWindowLongA(hwnd, GWL_STYLE, WindowStyle)
End Sub

Sub SetEnabledTrue()
   Application.CommandBars("Worksheet Menu Bar"). _
      Controls("Datei").Controls("Beenden").Enabled = True
   Call RestoreControlMenuExcel32
End Sub

Sub SetEnabledFalse()
   Application.CommandBars("Worksheet Menu Bar"). _
      Controls("Datei").Controls("Beenden").Enabled = False
   Call RemoveControlMenuExcel32
End Sub

Beiträge aus dem Excel-Forum zu den Themen API und Menue

Excel to Word Kapitel VBA Anfangskapital berechnen
Gestapelte Säulen-Diagramm: Ich kapier's nicht Excel Form Kontextmenue geht nicht
Googel Maps API in Excel VBA einfügen Zellen Kontextmenue ausfuehren
Dynamisches Kontextmenue Berechnung vom Endkapital
Makro für Pulldown Menue Menueeintrag einbinden
API? - xl-Parameter aus Long-Wert bestimmen Berechnung Kapitalanlage
makro in kontextabhängiges Befehlsmenue Menue mit eigenen Macros versehen
Telefonnummer auslesen per TAPI Entfernen eines Eintrages im Kontextmenue
Untermenue von Menueleiste Läuft RSAPI.DLL mit WIN2000 und XP?
Adresszeile/Formelzeile im Menue ist weg JAVA API mit VBA verwenden
FaceId bei Untermenue möglich? Menue Leiste ein ausblenden
Menue nur erstellen, wenn noch nicht vorhadnen Menuebar ausblenden
2003 Menuepunkte in 2007 finden Kontexmenue
Filter als Dropdown-Menue in neuem Tabellenblatt Papierformat speichern
Menue verschiedene Papierquele beim Drucken
Entnahme mit Kapitalverzehr Berechnung Endkapital / Zinsen
Eigenes Formatierungsmenue Druck auf Papier und PDF mit und ohne Logo
Frage zur RSAPI.DLL Kontextmenue
Kombination Seitenumbruch Papierformat Anpassen Hilfe bei der Fehlersuche (API)
Frage zu XKAPITALWERT API-Zugriff
Endkapital? bei unterschiedlichen Zahlungen API für Tastaturpuffer auslesen
API für Tastaturpuffer auslesen Autofilter, polldown Menue in Fragmenten?
Drop down Menue Excel Menues mit Bildern
Pfeil im Drop-Down-Menue dauerhaft Beispiel Verwendung WINAPI...
Zellen wie Milimeterpapier skalieren Drop Down Menue in Zelle