Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
872to876
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
872to876
872to876
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Commandbar

Commandbar
30.05.2007 11:51:52
Frank
Hallo Ihr Lieben Helferlein,
muß mal wieder um Hilfe bitten.
Beim Start der Datei wird eine eigene Commandbar mit gestartet.
(Code habe ich aus dem Forum und für mich angepasst)
Ist es möglich das diese Commandbar auf einem best. Tabellenblatt (z.B. Tabelle1) nicht funktioniert oder ausgeblendet wird. Auf allen andern Tabellenblättern soll sie funktionieren.
Ich sage schonmal Danke
Gruß Frank

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Commandbar
30.05.2007 12:22:48
Rudi
Hallo,
als Beispiel (in DieseArbeitsmappe)

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Application.CommandBars("MeineLeiste").Visible = Sh.Name  "Tabelle1"
End Sub


Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

AW: Commandbar
30.05.2007 12:23:16
Matthias
Hallo Frank,
ins Codemodul des betreffenden Blattes:

Private Sub Worksheet_Activate()
CommandBars("Formatting").Enabled = False
End Sub
Private Sub Worksheet_Deactivate()
CommandBars("Formatting").Enabled = True
End Sub


und statt "Formatting" den Namen deiner CommandBar einsetzen.
Gruß Matthias

Anzeige
AW: Commandbar
31.05.2007 09:03:46
Frank
Danke Erstmal,
Es funktioniert zum Teil.
Wenn ich die Mappe mit ausgeblendeter Commandbar schließe und dann wieder starte kommt immer die
Fehlermeldung 5. Die Commandbar wird dann auch nicht geladen. (Bei Beiden Makros)
Gruß Frank

AW: Commandbar
31.05.2007 09:57:49
Matthias
Hallo Frank,
Wie wird die CommandBar denn erzeugt?
Gruß Matthias

AW: Commandbar
31.05.2007 12:22:18
Frank
Hallo Matthias
Beim Start der Arbeitsmappe.
Anbei mein Makro

Private Sub Workbook_Open()
Worksheets("Tabelle1").Activate
Range("A6").Select
Dim cb As CommandBar
Dim CBC As CommandBarButton
Dim i%
On Error Resume Next
Set cb = Application.CommandBars.Add(Name:="Druck", _
temporary:=True, Position:=msoBarTop)
On Error GoTo 0
If Application.CommandBars("Druck").Visible = False Then
cb.Visible = True
For i = 1 To 5
Set CBC = cb.Controls.Add(Type:=msoControlButton)
With CBC
.Width = 50                 ' Breite der Schalter
.Style = msoButtonIconAndCaption    ' Text und Icon
Select Case i
Case 1
.FaceId = 4
.Caption = "Druckt das ganze Blatt"
.OnAction = "Druck_ALLES"
.TooltipText = "Das ganze Tabellenblatt drucken"
Case 2
.FaceId = 4
.Caption = "Bad1"
.OnAction = "Druck_Bad1"
.TooltipText = "Druckt den Schichtplan für das Bad1"
Case 3
.FaceId = 4
.Caption = "Bad2"
.OnAction = "Druck_Bad2"
.TooltipText = "Druckt den Schichtplan für das Bad2"
Case 4
.FaceId = 4
.Caption = "Bad3"
.OnAction = "Druck_Bad3"
.TooltipText = "Druckt den Schichtplan für das Bad3"
Case 5
.FaceId = 277
.Caption = "Beenden"
.OnAction = "Closer"
.TooltipText = "Beendet das Programm und speichert die Daten"
End Select
End With
Next i
End If
End Sub



Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.CommandBars("Druck").Delete
End Sub


Gruß Fank

Anzeige
AW: Commandbar
31.05.2007 13:01:00
Matthias
Hallo Frank,
Teste mal dies, in DieseArbeitsmappe:

Option Explicit
Const SymName = "Druck"
Private Sub Workbook_Activate()
SymbolleisteErstellen
End Sub
Private Sub Workbook_Deactivate()
SymbolleisteLöschen
End Sub
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
On Error Resume Next
Application.CommandBars(SymName).Enabled = Sh.Name  "Tabelle1"
End Sub
Private Sub Workbook_Open()
Application.Goto Me.Sheets("Tabelle1").Range("A6")
'Worksheets("Tabelle1").Activate
'Range("A6").Select
End Sub
Private Sub SymbolleisteLöschen()
On Error Resume Next
Application.CommandBars(SymName).Delete
On Error GoTo 0
End Sub
Private Sub SymbolleisteErstellen()
Dim cb As CommandBar
Dim CBC As CommandBarButton
Dim i%
Application.ScreenUpdating = False
SymbolleisteLöschen
Set cb = Application.CommandBars.Add(Name:=SymName, _
temporary:=True, Position:=msoBarTop)
cb.Visible = True
For i = 1 To 5
Set CBC = cb.Controls.Add(Type:=msoControlButton)
With CBC
.Width = 50                 ' Breite der Schalter
.Style = msoButtonIconAndCaption    ' Text und Icon
Select Case i
Case 1
.FaceId = 4
.Caption = "Druckt das ganze Blatt"
.OnAction = "Druck_ALLES"
.TooltipText = "Das ganze Tabellenblatt drucken"
Case 2
.FaceId = 4
.Caption = "Bad1"
.OnAction = "Druck_Bad1"
.TooltipText = "Druckt den Schichtplan für das Bad1"
Case 3
.FaceId = 4
.Caption = "Bad2"
.OnAction = "Druck_Bad2"
.TooltipText = "Druckt den Schichtplan für das Bad2"
Case 4
.FaceId = 4
.Caption = "Bad3"
.OnAction = "Druck_Bad3"
.TooltipText = "Druckt den Schichtplan für das Bad3"
Case 5
.FaceId = 277
.Caption = "Beenden"
.OnAction = "Closer"
.TooltipText = "Beendet das Programm und speichert die Daten"
End Select
End With
Next i
cb.Enabled = ActiveSheet.Name  "Tabelle1"
Application.ScreenUpdating = True
End Sub


Gruß Matthias

Anzeige
AW: Commandbar
01.06.2007 11:26:00
Frank
Hallo Matthias,
das hast Du super gemacht.
Funktioniert alles prima.
So werde ich es wohl nie hinbekommen! Versuche immer fertige Makros umzustricken und
dann stoße ich an Grenzen.
Nochmals 1000 mal Danke
Gruß Frank

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige