Excel-Access récupération de champs
Résolu
mod77
Messages postés
1284
Date d'inscription
Statut
Membre
Dernière intervention
-
mod77 Messages postés 1284 Date d'inscription Statut Membre Dernière intervention -
mod77 Messages postés 1284 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai fait un formulaire de saisie d'identité de client sous access avec d'autre saisie.
J'ai fait un questionnaire sous excel qui devra être lié au client.
Pour faire mon rapport, j'ai besoin de récupérer, sous excel, certains champs saisis sous access.
Comment dois-je faire pour que ça soit automatique et pas au coup par coup ?
C'est a dire que lorsque j'ouvre mon fichier excel il y ait les coordonnées du client dans la feuil du questionnaire.
Quelqu'un peut-il me renseigner SVP ?
J'ai fait un formulaire de saisie d'identité de client sous access avec d'autre saisie.
J'ai fait un questionnaire sous excel qui devra être lié au client.
Pour faire mon rapport, j'ai besoin de récupérer, sous excel, certains champs saisis sous access.
Comment dois-je faire pour que ça soit automatique et pas au coup par coup ?
C'est a dire que lorsque j'ouvre mon fichier excel il y ait les coordonnées du client dans la feuil du questionnaire.
Quelqu'un peut-il me renseigner SVP ?
A voir également:
- Valeur champ excel
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
- Excel moyenne - Guide
64 réponses
Bonsoir michel_m,
Merci pour l'info "client". Ca veut donc dire écrire "client" dans la variable client, n'est ce pas?
Concernant la proposition de Le Pingou, je suis en train de débugger. J'ai déclaré des variables qui manquent et je bloque justement sur celle-ci: "exapp =" ? avez-vous l'astuce SVP?
Merci pour l'info "client". Ca veut donc dire écrire "client" dans la variable client, n'est ce pas?
Concernant la proposition de Le Pingou, je suis en train de débugger. J'ai déclaré des variables qui manquent et je bloque justement sur celle-ci: "exapp =" ? avez-vous l'astuce SVP?
Finalement michel_m, j'ai repris votre proposition.
Pouvez-vous me dire si je peux choisir la façon d'afficher les données récupérées SVP , sur une même colonne.
Merci
Pouvez-vous me dire si je peux choisir la façon d'afficher les données récupérées SVP , sur une même colonne.
Merci
Bonjour mod77,
Je viens de contrôler le fichier exemple et il fonctionne à la perfection.
Il y a certainement une erreur chez vous.
Contrôler, sous Access, que la bibliotèque "Microsoft Excel xx Objects Library" est disponible dans les références MS VBA (Alt+F11 et sous menu Outils clic sous Références )
Je viens de contrôler le fichier exemple et il fonctionne à la perfection.
Il y a certainement une erreur chez vous.
Contrôler, sous Access, que la bibliotèque "Microsoft Excel xx Objects Library" est disponible dans les références MS VBA (Alt+F11 et sous menu Outils clic sous Références )
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour Le Pingou,
Je n'ai pas voulu vous offusquer, je sais au combien votre aide m'est toujours précieuse, mais comme ça plantait dès le début d'abord sur "repclasseur" alors je l'ai déclaré, puis sur "Chr(34)" et enfin sur "exapp =" je ne savais plus quoi faire.
Néanmoins, j'ai regardé dans les références et j'ai bien "Microsoft Excel 10 Objects Library" de sélectionné.
Sur l'utilisation de votre proposition je dois bien ouvrir le fichier Excel "GestionPerso" puis ouvrir la BD_GestionPerso et cliquer sur le bouton "Renseigner Excel" apres avoir sélectionné ma fiche ?
Se serait bien que ça marche, car c'est exactement la façon de gérer que je cherche à faire.
Merci encore
Je n'ai pas voulu vous offusquer, je sais au combien votre aide m'est toujours précieuse, mais comme ça plantait dès le début d'abord sur "repclasseur" alors je l'ai déclaré, puis sur "Chr(34)" et enfin sur "exapp =" je ne savais plus quoi faire.
Néanmoins, j'ai regardé dans les références et j'ai bien "Microsoft Excel 10 Objects Library" de sélectionné.
Sur l'utilisation de votre proposition je dois bien ouvrir le fichier Excel "GestionPerso" puis ouvrir la BD_GestionPerso et cliquer sur le bouton "Renseigner Excel" apres avoir sélectionné ma fiche ?
Se serait bien que ça marche, car c'est exactement la façon de gérer que je cherche à faire.
Merci encore
Bonjour,
Il y a certainement un problème de version Access.
Qu'elle est votre version ?
En plus, merci, de mettre une copie de la fenêtre des références !
J'attends votre réponse.
Il y a certainement un problème de version Access.
Qu'elle est votre version ?
En plus, merci, de mettre une copie de la fenêtre des références !
J'attends votre réponse.
Je ne comprends pas aussi pourquoi il n'y a pas de déclaration "repclasseur" dans votre proposition alors que dans celle de michel_m "chemin" est déclaré ?
Bonjour,
Merci. Mais se n'est pas les bonnes références, elles cporrespondent GestionPerso.xls:
Merci de mettre celles qui correspondent à Access GestionPerso.mdb
Merci. Mais se n'est pas les bonnes références, elles cporrespondent GestionPerso.xls:
Merci de mettre celles qui correspondent à Access GestionPerso.mdb
Merci Le Pingou,
je viens de voir qu'il manque aussi "microsoft excel 12.0 object library" lorsque j'ouvre BD "GestionPerso"
je vais voir ce que vous me marquez.
A+
je viens de voir qu'il manque aussi "microsoft excel 12.0 object library" lorsque j'ouvre BD "GestionPerso"
je vais voir ce que vous me marquez.
A+
Voici ce que j'ai maintenant:
https://www.cjoint.com/?derjU2lKLd
mais je ne trouve pas le fichier manquant.
https://www.cjoint.com/?derjU2lKLd
mais je ne trouve pas le fichier manquant.
Bonjour,
Merci comme cela c'est mieux.
Vous devez décocher [Manquant: Microsoft Exel 12.0 Object Library] et [Microsoft ADO Ext. 2.8 for DDL and Security]
Merci comme cela c'est mieux.
Vous devez décocher [Manquant: Microsoft Exel 12.0 Object Library] et [Microsoft ADO Ext. 2.8 for DDL and Security]
Hip hip hip! En..fin!
Un grand merci à vous ça marche, Le Pingou.
Je vais essayer d'adapter maintenant votre version.
Il y a dores et déjà une ligne que je ne comprends pas :
" WHERE T_InitialisationAnnees.Identification = " & Chr(34) & Form_F_InitConge.Matricule & Chr(34)
Que représente Chr(34) ? et
quelle différence y-a-t-il entre "Sub EngVersExcel_ouvre_classeur()" et "Sub EngVersExcel()" dans leur rôle?
Merci
Un grand merci à vous ça marche, Le Pingou.
Je vais essayer d'adapter maintenant votre version.
Il y a dores et déjà une ligne que je ne comprends pas :
" WHERE T_InitialisationAnnees.Identification = " & Chr(34) & Form_F_InitConge.Matricule & Chr(34)
Que représente Chr(34) ? et
quelle différence y-a-t-il entre "Sub EngVersExcel_ouvre_classeur()" et "Sub EngVersExcel()" dans leur rôle?
Merci
Bonjour,
Juste au passage .....
Que représente Chr(34) ? Caractère de ponctuation (") nécessaire à la requête , a ne pas remplacer ou supprimer.
quelle différence y-a-t-il entre "Sub EngVersExcel_ouvre_classeur()" et "Sub EngVersExcel()" dans leur rôle? La première est un essai qui ouvre un classeur, j'ai oublié de la supprimer.
Juste au passage .....
Que représente Chr(34) ? Caractère de ponctuation (") nécessaire à la requête , a ne pas remplacer ou supprimer.
quelle différence y-a-t-il entre "Sub EngVersExcel_ouvre_classeur()" et "Sub EngVersExcel()" dans leur rôle? La première est un essai qui ouvre un classeur, j'ai oublié de la supprimer.
OK! dommage c'est celle qui se compile bien, l'autre me cause problème, mais c'est mon adaptation.
Peut-on prévoir que Excel s'ouvre dès qu'on appui sur le bouton dans access, puis éxécute le transfert ?
Ou faut-il créer un autre bouton pour cela ?
Peut-on prévoir que Excel s'ouvre dès qu'on appui sur le bouton dans access, puis éxécute le transfert ?
Ou faut-il créer un autre bouton pour cela ?
Bonjour,
Je suis de retour, mes réponses pour ce poste:
OK! dommage c'est celle qui se compile bien, l'autre me cause problème, mais c'est mon adaptation.
Les 2 vous poserons des problèmes, vous devez adapter le code selon vos propres fichiers.
Peut-on prévoir que Excel s'ouvre dès qu'on appui sur le bouton dans access, puis éxécute le transfert ? Oui c’est possible, cela dépends de la fréquence des ouvertures/fermetures mais cela on ne le sait pas.
Ou faut-il créer un autre bouton pour cela ? Non
Je suis de retour, mes réponses pour ce poste:
OK! dommage c'est celle qui se compile bien, l'autre me cause problème, mais c'est mon adaptation.
Les 2 vous poserons des problèmes, vous devez adapter le code selon vos propres fichiers.
Peut-on prévoir que Excel s'ouvre dès qu'on appui sur le bouton dans access, puis éxécute le transfert ? Oui c’est possible, cela dépends de la fréquence des ouvertures/fermetures mais cela on ne le sait pas.
Ou faut-il créer un autre bouton pour cela ? Non
J'ai oublié:
Je n'ai pas trouvé la variable "matricule" dans votre base access. Est-ce que je dois laisser ce terme pour la mienne?
Aussi, je n'ai pas créé de requête est-ce indispensable ?
ça bloque à cette ligne:
strSQL = "SELECT * FROM T_Client" & _
" WHERE T_Client.N°Client = " & Chr(34) & Form_F - Table.Matricule & Chr(34)
merci
Je n'ai pas trouvé la variable "matricule" dans votre base access. Est-ce que je dois laisser ce terme pour la mienne?
Aussi, je n'ai pas créé de requête est-ce indispensable ?
ça bloque à cette ligne:
strSQL = "SELECT * FROM T_Client" & _
" WHERE T_Client.N°Client = " & Chr(34) & Form_F - Table.Matricule & Chr(34)
merci
Bonjour,
Concerne poste 40 :
Je n'ai pas trouvé la variable "matricule" dans votre base access. Est-ce que je dois laisser ce terme pour la mienne?
Matricule est le nom du champ d’identification du formulaire [Form_F_InitConge] (champ père) qui lient les enregistrements du sous-formulaire [Form_ SF_InitialisationConge] (champ fils).
Vous devez donc mettre le nom que vous avez dans votre formulaire [Form_.......... . NomDeVotreChamp ]
Aussi, je n'ai pas créé de requête est-ce indispensable ?
Sans requête, aucunes données seras disponibles …
Concerne poste 40 :
Je n'ai pas trouvé la variable "matricule" dans votre base access. Est-ce que je dois laisser ce terme pour la mienne?
Matricule est le nom du champ d’identification du formulaire [Form_F_InitConge] (champ père) qui lient les enregistrements du sous-formulaire [Form_ SF_InitialisationConge] (champ fils).
Vous devez donc mettre le nom que vous avez dans votre formulaire [Form_.......... . NomDeVotreChamp ]
Aussi, je n'ai pas créé de requête est-ce indispensable ?
Sans requête, aucunes données seras disponibles …
Bonjour,
Alors, comment est appelé/activé cette requête et quelle est la requête qui sert à l'affichage SVP ?
Alors, comment est appelé/activé cette requête et quelle est la requête qui sert à l'affichage SVP ?
Bonjour,
Eh bien :
Alors, comment est appelé/activé cette requête et quelle est la requête qui sert à l'affichage SVP ?
La requête est transmise à la variable [strSQL]
strSQL = "SELECT * FROM T_InitialisationAnnees" & _
" WHERE T_InitialisationAnnees.Identification = " & Chr(34) & Form_F_InitConge.Matricule & Chr(34)
La requête est exécutée et le résultat est transmis dans la variable [rstcha]
Set rstcha = cdb.OpenRecordset(strSQL)
Eh bien :
Alors, comment est appelé/activé cette requête et quelle est la requête qui sert à l'affichage SVP ?
La requête est transmise à la variable [strSQL]
strSQL = "SELECT * FROM T_InitialisationAnnees" & _
" WHERE T_InitialisationAnnees.Identification = " & Chr(34) & Form_F_InitConge.Matricule & Chr(34)
La requête est exécutée et le résultat est transmis dans la variable [rstcha]
Set rstcha = cdb.OpenRecordset(strSQL)
Le Pingou,
J'ai 2 questions qui ont leur importance:
1- Est-ce que je peux utiliser comme argument de liaison entre table et formulaire, la variable de clé des tables?
J'ai écris ceci, mais ça bug à la dernière ligne: C'est N°Client qui est la clé des 2 tables.
strSQL = "SELECT * FROM T_Client" & _
" WHERE T_Client.N°Client = " & Chr(34) & Form_F_TableSF.N°Client & Chr(34)
Set rstcha = cdb.OpenRecordset(strSQL)
2- Pouvez-vous me préciser, aussi, s'il y a une raison particulière de changer le nom de la zone texte "identifications" en "matricule" SVP ?
Merci
J'ai 2 questions qui ont leur importance:
1- Est-ce que je peux utiliser comme argument de liaison entre table et formulaire, la variable de clé des tables?
J'ai écris ceci, mais ça bug à la dernière ligne: C'est N°Client qui est la clé des 2 tables.
strSQL = "SELECT * FROM T_Client" & _
" WHERE T_Client.N°Client = " & Chr(34) & Form_F_TableSF.N°Client & Chr(34)
Set rstcha = cdb.OpenRecordset(strSQL)
2- Pouvez-vous me préciser, aussi, s'il y a une raison particulière de changer le nom de la zone texte "identifications" en "matricule" SVP ?
Merci
Il n'y a rien à débugger dans ma procédure qui fonctionne correctement.
Voir : https://forums.commentcamarche.net/forum/affich-16750113-excel-access-recuperation-de-champs?page=2#25