Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > IHM
IHM Ce forum est dédié aux questions relatives à la création de formulaires et d'états, avec ou sans code VBA, et macros.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/12/2010, 00h31   #1
Candidat au titre de Membre du Club
 
Alain PUJOL
Inscription : octobre 2010
Messages : 21
Détails du profil
Informations personnelles :
Nom : Alain PUJOL

Informations forums :
Inscription : octobre 2010
Messages : 21
Points : 12
Points : 12
Par défaut activation / désactivation de boutons d'un ruban

Bonjour,

J'ai crée un ruban après lecture des différents tutos sur le sujet que j'ai trouvé et qui m'ont plus qu'aidé.

Je veux activer ou désactiver certains boutons du ruban à l'ouverture d'un formulaire en fonction de certaines critères

Donc sur activation du formulaire, en fonction des critères, je lance le

oMonruban.InvalidateControl Bouton

en ayant mis à false ou a true le enabled correspondant du bouton, mais le bouton en question ne change pas d'état.

J'ai donc crée dans le même formulaire un bouton de test qui lance exactement le même code et là le bouton change d'état. D'ailleur toujours le même code n'a pas d'effet si je le lance après mise à jour d'un textbox.

Malgré les tests, recherches, je ne vois pas d'ou peut venir ce disfonctionnement (à priori pas du code??)

Toutes vos réflexions sur le sujet m'aideront sans doute. Merci en tout cas.
a.pujol est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/12/2010, 02h37   #2
Candidat au titre de Membre du Club
 
Inscription : octobre 2010
Messages : 15
Détails du profil
Informations forums :
Inscription : octobre 2010
Messages : 15
Points : 10
Points : 10
Bonsoir,

De quoi dépendent les critères ? De variables globales ? De l'ouverture d'autres formulaires ? De l'état d'autres contrôles du ruban ?

Bonne soirée.
Jaako H. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/12/2010, 05h23   #3
Candidat au titre de Membre du Club
 
Alain PUJOL
Inscription : octobre 2010
Messages : 21
Détails du profil
Informations personnelles :
Nom : Alain PUJOL

Informations forums :
Inscription : octobre 2010
Messages : 21
Points : 12
Points : 12
Bonjour,

Les critères dépendent principalement du nombre d'enregistrement de la table liée au formulaire principal et du nombre d'enregistrement de la table liée au sous formulaire.
a.pujol est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/12/2010, 15h07   #4
Candidat au titre de Membre du Club
 
Inscription : octobre 2010
Messages : 15
Détails du profil
Informations forums :
Inscription : octobre 2010
Messages : 15
Points : 10
Points : 10
Bonjour,

où est-placé le "ruban.invalidate" ?

sur un événement du formulaire ? dans ce cas est-ce sur activation ? sur chargement ?

dans la procédure ouvrant le formulaire ? dans ce cas comment les enregistrements sont comptés ?
Jaako H. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/12/2010, 06h47   #5
Candidat au titre de Membre du Club
 
Alain PUJOL
Inscription : octobre 2010
Messages : 21
Détails du profil
Informations personnelles :
Nom : Alain PUJOL

Informations forums :
Inscription : octobre 2010
Messages : 21
Points : 12
Points : 12
Bonjour,

J'ai trouvé l'erreur dans le code.

dans le sub Ribbon_GetEnable j'utilisai la même variable MASQUE que je mettais à True ou False quelque soit le bouton.

Dans le sub Form_Current, dans le déroulement du code, selon mes critères, MASQUE prennait la valeur choisie, puis j'appliquai oMonruban.InvalidateControl ("bouton1"), si à la suite, MASQUE prennait la valeur opposée pour modifier un autre bouton, le bouton1 prennait l'état de la dernière valeur. Je ne sais trop pourquoi?

J'ai donc affecté à chaque bouton sa variable et mes boutons prennent maintenant l'état souhaité.
a.pujol est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h35.


 
 
 
 
Partenaires

Hébergement Web