Impossible d'obtenir un sous formulaire à double affichage !!! [Fermé]

Signaler
Messages postés
258
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
22 juin 2021
-
Messages postés
492
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
2 avril 2021
-
Bonjour,
Dans Access, j'ai créé un formulaire à double affichage adossé à une requête
Lorsque j'ouvre ce formulaire individuellement, il s'affiche bien en double affichage.
Mais si je l'incorpore en sous formulaire dans un formulaire parent, le double affichage disparait au profit d'un formulaire unique.
En conséquence, j'ai dupliqué mon SF "sous formulaire'
1/ Le SF 1 paramétré en feuille e données
2/ La SF 2 Paramétré en formulaire unique
et incorporé les 2SF dans le Formulaire parent.
Mais je n'ai plus la fonction qui, quand je sélectionne une ligne ou un champs du SF1
ça me filtre automatiquement le SF2 adossé à la ligne ou champs ayant le focus du SF1

Pouvez-vous m'aider pour créer cette fonction filtrant mon SF2 en fonction de la ligne ou du champ sélectionné dans le SF1.

Par avance merci pour votre aide

17 réponses

Messages postés
492
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
2 avril 2021
31
Bon,

j'ai réfléchis (oui ça peut m'arriver), et j'ai trouvé d'où vient le souci, du moins comment le contourner : on cherchait comme des c... dans le vba, mais en fait, il suffit de baser le sf2 sur la requête sans les filtres, et le faire afficher le contenu de l'enregistrement de sf1.
Au load des 2 sf, on se met sur un nouvel enregistrement.
Sur current du sf1, on affiche alors l'enregistrement correspondant dans sf2.

Je ne sais pas si je suis clair, mais voici la BdD modifiée (il doit il y avoir des morceaux de code en trop, mais pas le courage de tout vérifier).

https://www.cjoint.com/c/JDyo7ZN42IU

A+
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
258
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
22 juin 2021
1
Merci, tu es un génie !!!
Messages postés
492
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
2 avril 2021
31
Bonjour,

je crois que c 'est le fonctionnement normal.

Il faut tester avec ce code que tu mettras sur les événements susceptibles de faire actualiser ton SF2.
Pour faire la mise à jour à chaque fois que tu sélectionnes un enregistrement dans le SF1, mets le code sur l'évènement current().

set Sf2.form.recordset = Sf1.Form.recordset


a+
Messages postés
492
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
2 avril 2021
31
J'ai testé, ça ne fonctionne pas à première vue.
Je continue de chercher.
bonjours
dans ce lien un exemple
https://www.cjoint.com/c/JDtqG5DHh3S
Messages postés
492
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
2 avril 2021
31
??
Messages postés
492
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
2 avril 2021
31
Bon,

je viens de faire un test et cela fonctionne.


Sur l'évènement current() du sf1, j'ai mis ce code :

Dim enreg As Long 'ou integer, mais qui peut le + peut le -
enreg = Me.CurrentRecord 'on stocke l'enregistrement courant du sf1 dans la variable enreg

Forms!FormPrincipal!sf2.SetFocus 'on donne le focus au sf2

DoCmd.GoToRecord , , acGoTo, enreg 'on va au même enregistrement que sf1


A+
Messages postés
258
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
22 juin 2021
1
Bonjour,,
Vos lignes de codes fonctionnent bien mais elles rentrent en conflit avec ces lignes

Me.SFDépensesSaisieRecherchReq1FD.SetFocus
DoCmd.GoToRecord , , acNewRec
Me.SFDépensesSaisieRecherchReq1FU.SetFocus
DoCmd.GoToRecord , , acNewRec

Que j'avais placé sur les évènements d'ouverture de chargement du formulaire principal,

Maintenant le formulaire s'ouvre sans se positionner sur nouvel enregistrement.

Le suffixe 1FD identifie le SF1 Paramétré en feuille de données
Le suffixe 1FU identifie le SF2 Paramétré en formulaire unique

Comment faire pour conserver votre fonctionnalité et celle de se positionner automatiquement sur un nouvel enregistrement à l'ouverture ou au chargement du formulaire.

J'ai essayé plusieurs combinaisons possibles mais je n'y parviens pas.

Pouvez-vous m'aider sur ce point et encore merci pour ce que vous avez déjà développé.
Messages postés
492
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
2 avril 2021
31
Bonjour,

bah simplement tu mets
1/ Sur l'évènement load() du SF1
Me.SFDépensesSaisieRecherchReq1FD.SetFocus
DoCmd.GoToRecord , , acNewRec

2/ Sur l'évènement current() du SF1, tu laisses comme je t'ai suggéré, à savoir
Dim enreg As Long 'ou integer, mais qui peut le + peut le -
enreg = Me.CurrentRecord 'on stocke l'enregistrement courant du sf1 dans la variable enreg

Forms!FormPrincipal!sf2.SetFocus 'on donne le focus au sf2

DoCmd.GoToRecord , , acGoTo, enreg 'on va au même enregistrement que sf1


A+
Messages postés
258
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
22 juin 2021
1
Je reviens vers vous car j'ai testé votre code + 2 variantes,
J'obtiens des erreurs à chaque fois.
Avez-vous une idée pour pouvoir ouvrir ce formulaire sur Nouvel enregistrement ???
D'avance, Merci
Ci-dessous copies écran
Messages postés
492
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
2 avril 2021
31
Tu veux ouvrir quel formulaire sur un nouvel enregistrement ? Le formulaire principal ou le (un des) sous-formulaire ??

A+
Messages postés
492
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
2 avril 2021
31
Attends,

remplace "me.xxxxxxxxxx" (tu devrais choisir des noms encore + longs :-) ) par forms!formPrincipal!sf1.setfocus (premiere copie écran, donc sur load de sf1)

Ca devrait aller mieux...

A+
Messages postés
258
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
22 juin 2021
1
Cette fois ci j'ai une erreur sur tes 1ères lignes qui fonctionnaient "Synchronisation du focus des 2SF.
Question toute bête est ce que cela pourrait provenir par l'odre dans lequel sont exécutées ces lignes de côdes !!!
Serait-il possible d'appeler le nouvel enregistrement après un petit délais pour être parfaitement sûr que les lignes de synchro focus des deux SFsoient opérationnelles.
Qu'en pensez-vous ????
Ci-dessous copie écran de l'erreur.
Messages postés
492
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
2 avril 2021
31
Que se passe t'il si tu cliques sur continuer (la petite flèche verte en haut) ?
Messages postés
258
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
22 juin 2021
1
Il me marque Erreur d'exécution'2105': Impossible d'atteindre l'enregistrement spécifié
Messages postés
492
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
2 avril 2021
31
Du coup, cette erreur se produit au chargement ou au moment ou tu cliques sur un enregistrement dans le sf1 ?
Sinon, si tu veux, partage ta base via https://fr.fromsmash.com/

A+
Messages postés
258
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
22 juin 2021
1
voici le lien de téléchargement de ma base de données

Pour que les deux SF du Form DépensesSaisieRecherchReq s'ouvrent sur nouvel enregistrement.

Formulaire Maître "Parent"

DépensesSaisieRecherchReq

SF1 "paramétré en feuille de données"
SFDépensesSaisieRecherchReq1FD

SF2 "Paramétré en formulaire unique"
SFDépensesSaisieRecherchReq1FU

https://www.fromsmash.com/Xes6l8d23A-ct?e=aGFyZGRpc2NvdW50bWFya2V0QGdtYWlsLmNvbQ==
Messages postés
492
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
2 avril 2021
31 >
Messages postés
258
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
22 juin 2021

Je regarde, mais il y a pas mal de refresh, c'est "un peu" le bordel !
Messages postés
492
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
2 avril 2021
31
Essaies de mettre un
on error resume next
avant pour voir...
Messages postés
492
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
2 avril 2021
31
J'abandonne pour ce soir...
Messages postés
492
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
2 avril 2021
31
Sincèrement, je ne vois pas.

Pourquoi vouloir t'acharner à aller sur un nouvel enregistrement automatiquement ?

Il n'y a qu'à cliquer.

Si d'autres ont la patience, moi j'arrête là, trop usine à gaz
Messages postés
258
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
22 juin 2021
1
Merci quand même
Messages postés
492
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
2 avril 2021
31
Pas mal de soucis en ce moment,

si personne n'a trouvé, je réessaierai.

A+
Bonjour
C'est Un peu le Bor......
Une chose a faire c'est de faire des relations correctes un à plusieurs avec des id en auto et numérique.
Messages postés
258
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
22 juin 2021
1
Oui mais je n'ai plus de filtre .
Comment faire pour que ça fonctionne même avec le filtrage multi critère
Messages postés
492
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
2 avril 2021
31
Ah bah oui du coup, en modifiant la requête source du sf2 les modifs se sont appliquées au sf1.

Faut faire 2 requetes.

Je regarde cela