Dans mon un ruban j'utilise une fonction callbak getLabel. J'ai un Select C=
ase qui passe en revue diff=E9rents boutons pour mettre =E0 jour la l=E9gen=
de. Certains boutons ne se mettent pas jour car ils ne sont apparemment pas=
parcouru par le select case. J'ai v=E9rifi=E9 les id de mes boutons, la ca=
sse, l'appel de mes fonctions, ne comprends d'ou cela peut venir. Je joins =
une partie de mon code XML et code VBA associ=E9 :
les boutons ListSuiviVisa et ListAction ne se mettent =E0 jour
voila le VBA correspondant, qd je teste le control.id, le select case ne pa=
sse par ListSuiviVisa et ListAction
Public Sub maj_label_Counter(control As IRibbonControl, ByRef label)
Dim oRst As Recordset
Select Case control.id
=20
Case "ListAction"
Set oRst =3D CurrentDb.OpenRecordset("select * from Q_CountAction")
label =3D "Actions en cours(" & oRst(0) & ")"
oRst.Close
Case "ListSuiviVisa"
Set oRst =3D CurrentDb.OpenRecordset("select * from Q_CountaSuivre"=
)
label =3D "FA en cours de signature(" & oRst(0) & ")"
oRst.Close
Case "ListFAComplete"
Set oRst =3D CurrentDb.OpenRecordset("select * from Q_CountValid")
label =3D "FA =E0 compl=E9ter(" & oRst(0) & ")"
oRst.Close
Case "ListFAVisa"
Set oRst =3D CurrentDb.OpenRecordset("select * from Q_CountVisa")
label =3D "FA =E0 signer(" & oRst(0) & ")"
oRst.Close
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gloops
Pogo a écrit, le 22/03/2013 14:00 :
Dans mon un ruban j'utilise une fonction callbak getLabel. J'ai un Sele ct Case qui passe en revue différents boutons pour mettre à jour la l égende. Certains boutons ne se mettent pas jour car ils ne sont apparem ment pas parcouru par le select case. J'ai vérifié les id de mes bout ons, la casse, l'appel de mes fonctions, ne comprends d'ou cela peut veni r. Je joins une partie de mon code XML et code VBA associé :
les boutons ListSuiviVisa et ListAction ne se mettent à jour
voila le VBA correspondant, qd je teste le control.id, le select case n e passe par ListSuiviVisa et ListAction
Public Sub maj_label_Counter(control As IRibbonControl, ByRef label) Dim oRst As Recordset Select Case control.id
Case "ListAction" Set oRst = CurrentDb.OpenRecordset("select * from Q_CountAct ion") label = "Actions en cours(" & oRst(0) & ")" oRst.Close Case "ListSuiviVisa" Set oRst = CurrentDb.OpenRecordset("select * from Q_CountaSu ivre") label = "FA en cours de signature(" & oRst(0) & ")" oRst.Close Case "ListFAComplete" Set oRst = CurrentDb.OpenRecordset("select * from Q_CountVal id") label = "FA à compléter(" & oRst(0) & ")" oRst.Close Case "ListFAVisa" Set oRst = CurrentDb.OpenRecordset("select * from Q_CountVis a") label = "FA à signer(" & oRst(0) & ")" oRst.Close
End Select End Sub
Bonjour,
Ta question me laisse perplexe, mais les gens qui répondent ici fréquentent moins assidument qu'à une époque, alors je vais tâche r de faire ce que je peux.
Pour être franc je réponds de temps en temps ici grâce à une soli de expérience jusqu'à Access 2007, et beaucoup sur les versions 95 et 97 (entre lesquelles la migration était une question ... intéressante :) ), la machine où j'avais Access ne répond plus et je n'ai guère travai llé sur la personnalisation du ruban.
Toutefois il semble que les mécanismes mis en jeu soient un peu les mêmes que dans une certaine version de Word, où j'ai pas mal joué a vec les boîtes de dialogues dynamiques.
La documentation doit indiquer quelque part à quel moment cette fonctio n callback est appelée, et ça devrait permettre de comprendre sous quel les conditions. Un moyen assez classique est qu'une collection soit parcourue lors du chargement du ruban, donc il faut chercher comment cette collection est censée être initialisée, et si/comment elle es t mise à jour.
Trouves-tu quelque chose là-dessus, est-ce que ça pose des problème s de compréhension ?
Classiquement, j'imagine que tu as lu une page de doc sur la programmation de la fonction callback, il faut faire bien attention aux liens hypertexte qu'elle comporte.
Pogo a écrit, le 22/03/2013 14:00 :
Dans mon un ruban j'utilise une fonction callbak getLabel. J'ai un Sele ct Case qui passe en revue différents boutons pour mettre à jour la l égende. Certains boutons ne se mettent pas jour car ils ne sont apparem ment pas parcouru par le select case. J'ai vérifié les id de mes bout ons, la casse, l'appel de mes fonctions, ne comprends d'ou cela peut veni r. Je joins une partie de mon code XML et code VBA associé :
les boutons ListSuiviVisa et ListAction ne se mettent à jour
voila le VBA correspondant, qd je teste le control.id, le select case n e passe par ListSuiviVisa et ListAction
Public Sub maj_label_Counter(control As IRibbonControl, ByRef label)
Dim oRst As Recordset
Select Case control.id
Case "ListAction"
Set oRst = CurrentDb.OpenRecordset("select * from Q_CountAct ion")
label = "Actions en cours(" & oRst(0) & ")"
oRst.Close
Case "ListSuiviVisa"
Set oRst = CurrentDb.OpenRecordset("select * from Q_CountaSu ivre")
label = "FA en cours de signature(" & oRst(0) & ")"
oRst.Close
Case "ListFAComplete"
Set oRst = CurrentDb.OpenRecordset("select * from Q_CountVal id")
label = "FA à compléter(" & oRst(0) & ")"
oRst.Close
Case "ListFAVisa"
Set oRst = CurrentDb.OpenRecordset("select * from Q_CountVis a")
label = "FA à signer(" & oRst(0) & ")"
oRst.Close
End Select
End Sub
Bonjour,
Ta question me laisse perplexe, mais les gens qui répondent ici
fréquentent moins assidument qu'à une époque, alors je vais tâche r de
faire ce que je peux.
Pour être franc je réponds de temps en temps ici grâce à une soli de
expérience jusqu'à Access 2007, et beaucoup sur les versions 95 et 97
(entre lesquelles la migration était une question ... intéressante :) ),
la machine où j'avais Access ne répond plus et je n'ai guère travai llé
sur la personnalisation du ruban.
Toutefois il semble que les mécanismes mis en jeu soient un peu les
mêmes que dans une certaine version de Word, où j'ai pas mal joué a vec
les boîtes de dialogues dynamiques.
La documentation doit indiquer quelque part à quel moment cette fonctio n
callback est appelée, et ça devrait permettre de comprendre sous quel les
conditions. Un moyen assez classique est qu'une collection soit
parcourue lors du chargement du ruban, donc il faut chercher comment
cette collection est censée être initialisée, et si/comment elle es t
mise à jour.
Trouves-tu quelque chose là-dessus, est-ce que ça pose des problème s de
compréhension ?
Classiquement, j'imagine que tu as lu une page de doc sur la
programmation de la fonction callback, il faut faire bien attention aux
liens hypertexte qu'elle comporte.
Dans mon un ruban j'utilise une fonction callbak getLabel. J'ai un Sele ct Case qui passe en revue différents boutons pour mettre à jour la l égende. Certains boutons ne se mettent pas jour car ils ne sont apparem ment pas parcouru par le select case. J'ai vérifié les id de mes bout ons, la casse, l'appel de mes fonctions, ne comprends d'ou cela peut veni r. Je joins une partie de mon code XML et code VBA associé :
les boutons ListSuiviVisa et ListAction ne se mettent à jour
voila le VBA correspondant, qd je teste le control.id, le select case n e passe par ListSuiviVisa et ListAction
Public Sub maj_label_Counter(control As IRibbonControl, ByRef label) Dim oRst As Recordset Select Case control.id
Case "ListAction" Set oRst = CurrentDb.OpenRecordset("select * from Q_CountAct ion") label = "Actions en cours(" & oRst(0) & ")" oRst.Close Case "ListSuiviVisa" Set oRst = CurrentDb.OpenRecordset("select * from Q_CountaSu ivre") label = "FA en cours de signature(" & oRst(0) & ")" oRst.Close Case "ListFAComplete" Set oRst = CurrentDb.OpenRecordset("select * from Q_CountVal id") label = "FA à compléter(" & oRst(0) & ")" oRst.Close Case "ListFAVisa" Set oRst = CurrentDb.OpenRecordset("select * from Q_CountVis a") label = "FA à signer(" & oRst(0) & ")" oRst.Close
End Select End Sub
Bonjour,
Ta question me laisse perplexe, mais les gens qui répondent ici fréquentent moins assidument qu'à une époque, alors je vais tâche r de faire ce que je peux.
Pour être franc je réponds de temps en temps ici grâce à une soli de expérience jusqu'à Access 2007, et beaucoup sur les versions 95 et 97 (entre lesquelles la migration était une question ... intéressante :) ), la machine où j'avais Access ne répond plus et je n'ai guère travai llé sur la personnalisation du ruban.
Toutefois il semble que les mécanismes mis en jeu soient un peu les mêmes que dans une certaine version de Word, où j'ai pas mal joué a vec les boîtes de dialogues dynamiques.
La documentation doit indiquer quelque part à quel moment cette fonctio n callback est appelée, et ça devrait permettre de comprendre sous quel les conditions. Un moyen assez classique est qu'une collection soit parcourue lors du chargement du ruban, donc il faut chercher comment cette collection est censée être initialisée, et si/comment elle es t mise à jour.
Trouves-tu quelque chose là-dessus, est-ce que ça pose des problème s de compréhension ?
Classiquement, j'imagine que tu as lu une page de doc sur la programmation de la fonction callback, il faut faire bien attention aux liens hypertexte qu'elle comporte.