Merci à Patrick Toulon d'avoir cherché. Je profite de ce message pour te remercier pour ton partage au sujet du redimensionnement de l'UserForm. Je viens de m'en inspirer fortement avec succès.
J'ai lu le lien de Kiki29. L'article est très interessant mais la partie sur le Ribbon est trop ardue pour moi pour l'instant.
Suite à cet article, je me suis concentré sur l'ID. J'ai récupéré comme Patrick l'ID 847 grace à la moulinette suivante qui me donne tous les ID:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| Public Sub Listing()
Dim CBar As CommandBar
Dim CBarControl As CommandBarControl
Dim intCompt As Integer
intCompt = 2
ActiveSheet.UsedRange.Rows("2:" & ActiveSheet.UsedRange.Rows.Count).Clear
For Each CBar In Application.CommandBars
' On Error Resume Next
' CBar.Reset'Réinitialisation du menu à son état initial
ActiveSheet.Cells(intCompt, 1) = CBar.Name
For Each CBarControl In CBar.Controls
With CBarControl
Cells(intCompt, 2) = .Caption
Cells(intCompt, 3) = .Visible
Cells(intCompt, 4) = .Enabled
Cells(intCompt, 5) = .Index
Cells(intCompt, 6) = .ID
Cells(intCompt, 7) = .Type
Cells(intCompt, 8) = .BuiltIn
End With
intCompt = intCompt + 1
Next CBarControl
Next CBar
End Sub |
J'ai ensuite essayé le code:
Application.CommandBars("Ply").FindControl(ID:=847).Enabled = False
La propriété passe bien à False (Vérifié avec la moulinette) mais le bouton reste actif!
Pour info, le code suivant désactive bien le menu "Ply", le clic droit reste ainsi sans effet.
Application.CommandBars("Ply").Enabled = False
Demain, je travaillerai sur la notion de IDmso. Il y'a un article qui semble très interessant dans Access. Peut-être trouverais je mon bonheur.
Partager