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

CommandBars anpassen

CommandBars anpassen
21.03.2005 12:28:31
Marc
Hallo Exceler,
ich möchte in meiner Arbeitsmappe gewisse Menüpunkte deaktivieren und beim Schließen wieder aktivieren. Wie kann ich das machen?
Danke vorab.
Marc

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: CommandBars anpassen
21.03.2005 13:00:19
Oberschlumpf
Hi Marc
Mit Hilfe von www.google.de und diesem Suchtext: "menü deaktivieren site:herber.de" werden sehr viele Treffer zu Deiner Frage angezeigt.
Konnte ich helfen?
Ciao
Thorsten
AW: CommandBars anpassen
21.03.2005 13:49:09
Marc
Hallo Thorsten,
das hat mich doch schon einen großen Schritt nach vorn gebracht. Kannst du mir auch sagen, wie ich einzelne Befehle deaktiviere? Und eine weitere Frage: Wie kann ich einzelne Befehle in dem Menü disablen, wenn ich in der Tabelle die rechte Maustaste drücke?
Danke dir
Marc
AW: CommandBars anpassen
21.03.2005 13:57:01
Oberschlumpf
Hi Marc
zu einzelne Menü?Befehle deaktivieren:
diese Frage ist schon in meiner ersten Antwort beantwortet. In google.de mit oben angegebenen Suchtext wirst Du fündig. Du musst halt den Code nur anpassen.
zu rechte Maustaste:
auch hier gibts in google.de viel Text mit dem Suchtext "Kontextmenü"
Hoffem dass ich auch diesmal wieder helfen konnte.
Ciao
Thorsten
Anzeige
AW: CommandBars anpassen
21.03.2005 14:15:45
Marc
Hi Thorsten,
mir fehlte die richtige Bezeichnung für "Kontextmenü". Für einzelne Menüpunkte ist das "Menübefehl"? Unter diesem Stichwort habe ich allerdings nichts hilfreiches gefunden.
bzw. um was muss ich die Zeile "application.CommandBars("Worksheet Menu Bar").Controls("Extras")" erweitern?
Danke dir
Marc
AW: CommandBars anpassen
21.03.2005 14:23:40
Oberschlumpf
Hi Marc
Um das Menü EXTRAS zu erweitern, shcau Dir mal dieses Bsp an:
https://www.herber.de/index.html?https://www.herber.de/mailing/110100h.htm
Hier wird zwar gleich ein ganzes Menü hinzugefügt, aber es wird auch erklärt, wie das mit nur einzelnen Befehlen geht.
Der Suchtext in google.de war "menü extras site:herber.de"
Konnte ich helfen?
Ciao
Thorsten
Anzeige
AW: CommandBars anpassen
21.03.2005 16:02:11
Marc
Hallo Thorsten,
klappt alles. Kannst du mir noch sagen, wie das Menü heißt, wenn ich mit der rechten Maustaste auf eine Zeile und auf eine Spalte klicke?
Danke vorab
Marc
AW: CommandBars anpassen
21.03.2005 20:02:55
Nepumuk
Hallo Mark,
der Name der Commandbar spielt eigentlich keine Rolle. Wichtig ist die ID des Controls. Ein Beispiel für das ein- und ausschalten von "Ausschneiden" in allen Commandbars:


Option Explicit
Private Sub prcControlEnableDisable(intId As Integer, bolStatus As Boolean)
    Dim myCommandBar As CommandBar, myCommandBarControl As CommandBarControl
    For Each myCommandBar In CommandBars
        Set myCommandBarControl = myCommandBar.FindControl(ID:=intId, Recursive:=True)
        If Not myCommandBarControl Is Nothing Then myCommandBarControl.Enabled = bolStatus
    Next
End Sub
Public Sub prcOff()
    Call prcControlEnableDisable(21, False)
End Sub
Public Sub prcOn()
    Call prcControlEnableDisable(21, True)
End Sub


Damit du an die Nummern kommst, nimm eine leere Mappe und lasse folgendes Makro laufen:


Option Explicit
Public Sub create_Id_list()
    Dim myCommandBarControl As CommandBarControl, myCommandBar As CommandBar
    Dim intColumn As Integer, intCount As Integer, lngRow As Long, intCbCount As Integer
    Application.ScreenUpdating = False
    lngRow = 1
    Cells.ClearContents
    For Each myCommandBar In Application.CommandBars
        intCbCount = intCbCount + 1
        Cells(lngRow, 1) = myCommandBar.Name
        Cells(lngRow, 2) = myCommandBar.NameLocal
        With Cells(lngRow, 3)
            .Value = intCbCount
            .Font.Bold = True
        End With
        For intCount = 1 To myCommandBar.Controls.Count
            With myCommandBar.Controls(intCount)
                 Cells(lngRow + intCount, 1) = .ID
                 Cells(lngRow + intCount, 2) = .Caption
            End With
        Next intCount
        lngRow = lngRow + intCount + 1
    Next
    On Error Resume Next
    For lngRow = 2 To Cells(65536, 1).End(xlUp).Row
        If IsNumeric(Cells(lngRow, 1)) And Trim(Cells(lngRow, 1)) <> "" Then
            intColumn = 3
            For Each myCommandBarControl In Application.CommandBars(Cells(Cells(lngRow, 1).End(xlUp).Row, 1).Value).Controls(Cells(lngRow, 2).Value).Controls
                If Err.Number <> 0 Then GoTo nextone
                With myCommandBarControl
                    Cells(lngRow, intColumn) = .ID
                    Cells(lngRow, intColumn + 1) = .Caption
                End With
                intColumn = intColumn + 2
            Next
        End If
nextone:
    Err.Clear
    Next
    Columns.AutoFit
    Application.ScreenUpdating = True
End Sub


Der Code ich nicht sehr schön (der stammt von 1992, da konnte ich es noch nicht besser), aber er funktioniert.
Gruß
Nepumuk
Anzeige
AW: CommandBars anpassen
22.03.2005 10:23:57
Marc
Hallo Nepumuk,
danke für das Makro. Das hat mich nach vorn gebracht. Jetzt muss ich nochmal schauen, wie dich das in meinen Code einbringen kann.
Vielen Dank
Marc

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige