AW: Makro für eine Schaltfläche
13.06.2006 22:50:55
Jürgen
Hallo Sebastian,
Ich arbeite eigentlich nur mit Formular-Schaltflächen, denen ich ein Makro zuordne, weil ich damit am besten klar komme.
Hier "Diese Arbietsmappe" (habe ich übrigens auch hier aus dem Formum, ist aber schon sehr, sehr lange her):
Option Explicit
Dim Cn%
Dim CdbList()
Dim Status_FormulaBar As Boolean
Dim Status_HorScroll As Boolean
Dim Status_VerScroll As Boolean
Dim Status_StatusBar As Boolean
Dim Status_Gridlines As Boolean
Dim Status_Headings As Boolean
Dim Status_WorkTabs As Boolean
Private Sub Workbook_Open()
Worksheets("Start").Activate
Range("d3").Select
Dim Cdb As CommandBar
'Wenn Titelleiste von Excel geändern werden soll
Application.Caption = "Gothaer BKK"
'falls die eigenen Symbolleisten auch ausgeblendet werden sollen, dann den
'Code 'And Cdb.BuiltIn = True' aus nachstehender Zeile entfernen
Cn = 1
For Each Cdb In Application.CommandBars
If Cdb.Visible And Cdb.Type <> msoBarTypeMenuBar Then
ReDim Preserve CdbList(Cn)
CdbList(Cn) = Cdb.Name
Cn = Cn + 1
Cdb.Visible = False
End If
Next
'Stellt den Status fest und blendet alles aus
With ActiveWindow
Status_HorScroll = .DisplayHorizontalScrollBar
If .DisplayHorizontalScrollBar = True Then .DisplayHorizontalScrollBar = False
Status_VerScroll = .DisplayVerticalScrollBar
If .DisplayVerticalScrollBar = True Then .DisplayVerticalScrollBar = False
Status_Gridlines = .DisplayGridlines
If .DisplayGridlines = True Then .DisplayGridlines = False
Status_Headings = .DisplayHeadings
If .DisplayHeadings = True Then .DisplayHeadings = False
Status_WorkTabs = .DisplayWorkbookTabs
If .DisplayWorkbookTabs = True Then .DisplayWorkbookTabs = False
End With
With Application
Status_StatusBar = .DisplayStatusBar
If .DisplayStatusBar = True Then .DisplayStatusBar = False
Status_FormulaBar = .DisplayFormulaBar
If .DisplayFormulaBar = True Then .DisplayFormulaBar = False
'Menüleiste
.CommandBars(1).Enabled = False
End With
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Cdb As CommandBar
Dim Ci%
For Ci = 1 To Cn - 1
Application.CommandBars(CdbList(Ci)).Visible = True
Next Ci
With ActiveWindow
.DisplayHeadings = Status_Headings
.DisplayHorizontalScrollBar = Status_HorScroll
.DisplayVerticalScrollBar = Status_VerScroll
.DisplayGridlines = Status_Gridlines
.DisplayWorkbookTabs = Status_WorkTabs
End With
With Application
.DisplayStatusBar = Status_StatusBar
.DisplayFormulaBar = Status_FormulaBar
.CommandBars(1).Enabled = True
End With
End Sub
Ich habe leider wirklich kaum einen Schimmer von VBA, deshalb musst du es mir ganz, ganz ausführlich erklären! Das ist so, wie wenn man einem kleinen Kind erklären muss, wie eine Wasserstoffbombe funktioniert ;-)
Schon im Voraus vielen Dank für deine Mühe!!!