Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
656to660
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
656to660
656to660
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Toolbar nicht löschen

Toolbar nicht löschen
29.08.2005 10:42:08
Tom-
Hallo zusammen.
Ich habe eine Datei erstellt, für die ich bei speziellen
Benutzern über Makros eine eigene Toolbar einblende. Hierzu
lese ich zunächst die Benutzerkennung aus und vergebe dann
danach die Rechte.
beim Abmelden wird natürlich die Toolbar wieder gelöscht:
If Kennung = "xxxxxx" Then
Toolbars("Blattschutz").Delete
End If
Soweit so gut. Dies funktioniert auch alles. es handelt sich
bei dieser Datei um einen Arbeitszeitplan, der nur von
speziellen Leuten geändert werden soll. Das Problem ist nun, wenn
ich zwei Pläne, also z.B. August und September geöffnet habe und
dann einen schließe, ist die Toolbar bei der noch offenen Datei
ebenfalls gelöscht. ich müsste also theoretisch erst die Datei schließen
und dann wieder öffnen um sie über die Toolbar verändern zu können.
Wie muss ich also mein Makro ändern, um die Toolbar in der noch
offenen Datei zu erhalten ?
Gruß Tom

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Toolbar nicht löschen
29.08.2005 10:54:42
Matthias
Hallo Tom,
Wird die Toolbar (ich denke mal es ist eine Commandbar) zur Laufzeit erstellt?
Vielleicht so, die Toolbar wird dann beim "Umschalten" der Mappen immer neu erstellt:
(in DieseArbeitsmappe:)

Private Sub Workbook_Activate()
If Not InListe(Toolbars, "Blattschutz") Then
'hier Routine aufrufen, die Toolbar "Blattschutz" erstellt
End If
End Sub
Private Sub Workbook_Deactivate()
If InListe(Toolbars, "Blattschutz") Then
Toolbars("Blattschutz").Delete
End If
End Sub
Private Function InListe(Liste, n As String) As Boolean
Dim o As Object
For Each o In Liste
If o.Name = n Then
InListe = True
Exit Function
End If
Next o
End Function

Gruß Matthias
Anzeige
AW: Toolbar nicht löschen
29.08.2005 10:57:24
u_
Hallo,
unter der Voraussetzung, dass alle Workbooknamen mit 'Arbeitszeitplan' anfangen:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim blnWkb As Boolean, wkb As Workbook
For Each wkb In Workbooks
If wkb.Name Like "Arbeitszeitplan*" Then blnWkb = True
Next
If blnWkb = False Then CommandBars("MyToolBar").Delete
End Sub

Gruß
Geist ist geil!
AW: Toolbar nicht löschen
29.08.2005 11:36:46
Tom
Hi Matthias.
Das Makro klappt spitzenmäßig. Vielen Dand für die prompte Antwort.
@ u_ : werde auch diese Version noch ausprobieren. Auch an Dich vielen Dank.
Tom
Anzeige
AW: Toolbar nicht löschen
29.08.2005 11:41:42
Matthias
Hallo Tom,
danke für die Rückmeldung.
Das Problem bei BeforeClose ist, dass das Ereignis ausgeführt wird und danach evtl. die Möglichkeit gegeben wird, den Schließvorgang abzubrechen (Änderungen speichern? ja/nein/Abbrechen).
Bei "Abbrechen" ist dann die Toolbar gelöscht, die Mappe aber noch offen.
Gruß Matthias

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige