Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
828to832
828to832
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

schließen mit Makro

schließen mit Makro
14.12.2006 20:56:15
Tina
Hallo Leute
kann mir jemand sagen wie man den oberen Rand von einer Excel Datei ausblendet und ein Makro erstellt das die Aufgaben vom dem ( X ) übernimmt.
Gruß Tina

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: schließen mit Makro
14.12.2006 21:06:41
EtoPHG
Hallo Tina,
Wenn Du mit dem oberen Rand den Standard-Windows-Fensterbalken meinst:
Vielleicht mit sehr sehr schwierigen Programmteilen die sich der Windows API's und anderer Gemeinheiten bedienen.
Aufgaben vor dem Schliessen:
In DieseArbeitsmappe:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Msgbox "Jetzt komm erstmal ich!"
End Sub

Gruss Hansueli
AW: schließen mit Makro
15.12.2006 01:03:48
Alexander
>>> Ins Starmodul folgenden Code
Option Explicit

Private Sub Workbook_Open()
Call SetEnabledFalse 'Schließkreuz sperren
End Sub

In ein Standartmodul folgenden Code
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
Fogenden Code ebenfalls in ein Standartmodul und der Schaltfläche ""BEENDEN"" zuweisen (Schaltfläche Beenden)
Sub Beenden()
Call SetEnabledTrue
Application.Quit
Application.DisplayAlerts = True
End Sub
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige