Bonjour,

Mon but: activer automatiquement un onglet personnel du ruban "Devis" lorsque j'ouvre un fichier "X" mais aussi quand je reviens sur ce fichier"X" après avoir travaillé sur d'autres fichiers.
Pas de problème pour faire cela à l'ouverture du fichier "X" par la procédure "Onload" du fichier xml, l'onglet "devis" du ruban devis est bien activé.
Par contre, une fois "X" ouvert, Je ne réussis pas à ré-activer "Devis" chaque fois que je reviens sur ce fichier alors qu'un autre onglet de ruban est activé.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
Public RibDev As IRibbonUI
 
'Callback for customUI.onLoad
Public Sub CmasrubandevLoad(ribbon As IRibbonUI)
         Set RibDev = ribbon
        Application.OnTime Now + TimeValue("00:00:01"), "reTaRder"   
End Sub
 
Sub reTaRder()
   RibDev.ActivateTabQ "cmasTabdevis", "CcmasTabdevis"
End Sub
Pas de soucis à l'ouverture, l'onglet "Devis" (Id "cmasTabdevis") est bien activé.
Par contre
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
Private Sub Workbook_Activate()
Call CmasrubandevLoad(RibDev)
End Sub
N'active pas l'onglet sans doute parce que RibDev est "nothing".
Comment faire pour que RibDev ne perde pas sa valeur après l'ouverture.
Merci de m'éclairer sur ce point