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 15/03/2011, 21h43   #1
Membre du Club
 
Inscription : octobre 2006
Messages : 138
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 138
Points : 58
Points : 58
Envoyer un message via MSN à vandrie
Par défaut Sélecteur d'enregistrement

Bonjour,

Dans un formulaire tabulaire sous access 2007 en mode datasheet, quand on sélectionne un enregistrement (par le sélecteur sur le coté gauche), toute la ligne est encadrée en orange (en tout cas sur ma version). Est-il possible, par le code, d'obtenir la même chose au chargement du formulaire sur le premier enregistrement par exemple ?


Bonne soirée.
vandrie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/03/2011, 20h05   #2
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 939
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 939
Points : 6 278
Points : 6 278
Bonsoir,

essaie
Code :
1
2
3
Private Sub Form_Load()
DoCmd.RunCommand acCmdSelectRecord
End Sub
A+
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/03/2011, 17h02   #3
Membre du Club
 
Inscription : octobre 2006
Messages : 138
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 138
Points : 58
Points : 58
Envoyer un message via MSN à vandrie
Bonsoir,

Merci pour ce test mais ça ne fonctionne pas.
J'ai un message d'erreur comme quoi ce n'est pas le bon événement à utiliser pour ce genre d'action, tout du moins, c'est pas le bon moment.
J'ai essayé sur les événements Activate et Current et ça ne fonctionne pas mieux.

Le problème reste entier.
vandrie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/03/2011, 17h57   #4
Membre éprouvé
 
Homme Robert LINCE
Conseiller psycho-pédagogique
Inscription : octobre 2007
Messages : 279
Détails du profil
Informations personnelles :
Nom : Homme Robert LINCE
Localisation : Belgique

Informations professionnelles :
Activité : Conseiller psycho-pédagogique
Secteur : Enseignement

Informations forums :
Inscription : octobre 2007
Messages : 279
Points : 478
Points : 478
Bonjour.
Pour sélectionner, il faut d'abord atteindre un enregistrement.
Donc le code serait
Code :
1
2
3
4
Private Sub Form_Load()
    DoCmd.GoToRecord , , acFirst
    DoCmd.RunCommand acCmdSelectRecord
End Sub
Attention : un Delete malencontreux à ce moment effacera l'enregistrement si le formulaire est en mode encodage permis! Ne pas désactiver les Warnings!
Bonne soirée!
RobiPMS est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2011, 21h07   #5
Membre du Club
 
Inscription : octobre 2006
Messages : 138
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 138
Points : 58
Points : 58
Envoyer un message via MSN à vandrie
Merci pour cette réponse mais ça ne fonctionne pas mieux.
Mais cette fois-ci, je n'ai pas d'erreur.

Si quelqu'un a une autre idée ...
vandrie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2011, 12h26   #6
Membre du Club
 
Inscription : octobre 2006
Messages : 138
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 138
Points : 58
Points : 58
Envoyer un message via MSN à vandrie
Par défaut Complément d'information

Bonjour à tous,

Excellent week-end pascal pour ceux qui en profitent.

Je voulais juste poster une image de ce que je cherche. Je pense que cette fonction est native dans access 2007 et je ne suis pas certain que l'on puisse la réaliser par le code. En fait, prenons un formulaire tabulaire. Quand je clique sur le sélecteur d'enregistrement à gauche, j'ai tout le jeu qui s'entoure d'un cadre, sur mon application il est orange.
Voir la pièce jointe ...

Bon week-end.
Images attachées
Type de fichier : png Selection.png (21,0 Ko, 13 affichages)
vandrie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2011, 13h18   #7
Membre Expert
 
Homme Robert JAMIN
Retraité
Inscription : juillet 2009
Messages : 1 223
Détails du profil
Informations personnelles :
Nom : Homme Robert JAMIN
Âge : 73
Localisation : Belgique

Informations professionnelles :
Activité : Retraité
Secteur : Enseignement

Informations forums :
Inscription : juillet 2009
Messages : 1 223
Points : 2 022
Points : 2 022
Bonjour,

Peut-être là aurez-vous de l'aide

http://argyronet.developpez.com/offi...ghlightrecord/
__________________
Cordialement.

RJ
rjamin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2011, 16h35   #8
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 939
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 939
Points : 6 278
Points : 6 278
Bonjour,

Peux-tu nous en dire un peu plus sur ton formulaire ?
Apparemment ce n'est pas un simple formulaire affiché en mode feuille de données.

Est-ce un formulaire double affichage ?
Est-ce un formulaire avec un contrôle sous-formulaire ?

A+
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2011, 22h11   #9
Membre du Club
 
Inscription : octobre 2006
Messages : 138
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 138
Points : 58
Points : 58
Envoyer un message via MSN à vandrie
C'est un sous formulaire en mode datasheet placé dans un formulaire principal sur lequel il y a un contrôle onglet qui filtre les enregistrements du sous formulaire.

Cette fonctionnalité doit fonctionner dans Access nativement puisque je l'obtiens quand je clique dans le sélecteur à gauche de l'enregistrement. Ce que j'aimerais c'est qu'à l'ouverture, le premier enregistrement passe dans cet état pour signifier à l'opérateur de saisie qu'il est sur le premier enregistrement. Sans cela, quand le sous formulaire s'ouvre pour la première fois, le premier enregistrement est bien actif mais il n'est pas en surbrillance ...
vandrie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/04/2011, 08h57   #10
Membre Expert
 
Homme Robert JAMIN
Retraité
Inscription : juillet 2009
Messages : 1 223
Détails du profil
Informations personnelles :
Nom : Homme Robert JAMIN
Âge : 73
Localisation : Belgique

Informations professionnelles :
Activité : Retraité
Secteur : Enseignement

Informations forums :
Inscription : juillet 2009
Messages : 1 223
Points : 2 022
Points : 2 022
Bonjour et Joyeuses Pâques à tous,

Dans Access 2007 le champs actif d'un formulaire est mis en surbillance (fond noir) avec la MFC on a également une condition Champ activé qui permet de surligné avec une couleur au choix ou changer la couleur de la police dans le champ activé. Et par défaut c'est le premier champ du premier enregistrement qui est actif.
Malheureusement cela n'est applicable qu'a un champ à la fois. Mais cela attire quand même l'attention de la personne qui encode si par exemple on met le fond du champs activé en jaune.
__________________
Cordialement.

RJ
rjamin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/04/2011, 12h51   #11
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 939
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 939
Points : 6 278
Points : 6 278
Bonjour,

Citation:
Envoyé par vandrie Voir le message
C'est un sous formulaire en mode datasheet placé dans un formulaire principal sur lequel il y a un contrôle onglet qui filtre les enregistrements du sous formulaire.
Pour que ça fonctionne il faut que le sous-formulaire ait le focus.
Sinon la ligne de code
Code :
DoCmd.RunCommand acCmdSelectRecord
va être appliquée au formulaire principal.
Si le contrôle sous-formulaire n'est pas le premier dans l'ordre de tabulation, il faut lui donner le focus.

Ensuite, dans l'événement "Sur Ouverture", le formulaire n'est pas encore visible, ce qui peut poser un problème.
Il faut forcer l'affichage du formulaire.

Code :
1
2
3
4
5
6
7
8
Private Sub Form_Load()
' Forcer le formulaire à s'afficher
If Not Me.Visible Then Me.Visible = True
' Donner le focus au sous-formulaire
Me.NomContrôleSousFormulaire.SetFocus
' Selectionner l'enregistrement du contrôle actif
DoCmd.RunCommand acCmdSelectRecord
End Sub
A+
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/04/2011, 19h43   #12
Membre du Club
 
Inscription : octobre 2006
Messages : 138
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 138
Points : 58
Points : 58
Envoyer un message via MSN à vandrie
Merci pour ces conseils mais je n'ai pas plus de résultat avec ce code.

Ceci dit, je n'ai aucun message d'erreur et l'application tourne bien mais mon premier enregistrement n'est toujours pas sélectionné, seul le premier champ est entouré d'un cadre orange, signifiant que c'est l'enregistrement en cours.
C'est pas mal mais j'aurais préféré que toute la ligne soit sélectionnée.

Merci encore à vous.
vandrie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/04/2011, 21h00   #13
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 939
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 939
Points : 6 278
Points : 6 278
Bonsoir,

Est-ce que cet exemple (formulaire fmTest) fonctionne ?

Tu as peut-être du code événementiel qui s'exécute après l'événement formulaire "sur chargement".
J'ai remarqué que lorsque le sous-formulaire perd le focus, la sélection est perdue.

A+
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/04/2011, 13h20   #14
Membre du Club
 
Inscription : octobre 2006
Messages : 138
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 138
Points : 58
Points : 58
Envoyer un message via MSN à vandrie
Superbe !

Oui sur cet exemple ça fonctionne bien et c'est justement ce que je recherche. Le premier enregistrement est entièrement sélectionné.
Bravo ...

Bon je vais rechercher du coté de ma séquence d'événements. Sans doute que quelque chose perturbe la logique de déroulement.
Je vous tiens au courant.

Merci.
vandrie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/04/2011, 11h23   #15
Membre du Club
 
Inscription : octobre 2006
Messages : 138
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 138
Points : 58
Points : 58
Envoyer un message via MSN à vandrie
Ca fonctionne !


En fait, j'ai confondu deux événements lors de mes tests :
sur ouverture et sur chargement. En regardant de plus près l'exemple donné, l'événement à retenir est sur chargement.

Une fois placé ce code dans le module correspondant, ça fonctionne merveilleusement bien.

Merci encore.
vandrie 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 18h53.


 
 
 
 
Partenaires

Hébergement Web