Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
756to760
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
756to760
756to760
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Menübefehle per VBA deaktivieren

Menübefehle per VBA deaktivieren
19.04.2006 13:06:30
Günther
Hallo!
Mit folgendem Befehl kann ich das Menü "Datei" deaktivieren:
Application.CommandBars("Worksheet Menu Bar").Controls("&Datei").Enabled = False
Wie kann ich aber nur den Befehl "Eigenschaften" im Menü "Datei" deaktivieren?
Danke im Voraus
gg

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Menübefehle per VBA deaktivieren
19.04.2006 13:23:49
Harald
Hallo Günther,
diese Zeilen hab ich mir mal hier abgekupfert ;-))

Private Sub procControlEnableDisable(intId As Integer, bolStatus As Boolean)
Dim myCommandBar As CommandBar, myCommandBarControl As CommandBarControl
For Each myCommandBar In Application.CommandBars
Set myCommandBarControl = myCommandBar.FindControl(ID:=intId, Recursive:=True)
If Not myCommandBarControl Is Nothing Then myCommandBarControl.Enabled = bolStatus
Next
End Sub

Public Sub sperren()
Call procControlEnableDisable(750, False)
End Sub
Public Sub freigeben()
Call procControlEnableDisable(750, True)
End Sub
Gruss Harald
P.S.: Falls dich eine Liste der Commandbars-ID interessiert
Public Sub create_Id_list()
' ID für Commandbars aufzeigen
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
Anzeige
AW: Menübefehle per VBA deaktivieren
19.04.2006 16:17:08
Günther
Danke Harald!
Die zündende Idee, die ich gesucht habe, ist im langen Code enthalten:
Application.CommandBars(1).Controls("&Datei").Controls("Ei&genschaften").Enabled = False
Danke nochmals.
gg
Danke für die Rückmeldung owT
20.04.2006 07:32:23
Harald
Gruss Harald

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige