|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Membre habitué
![]() jean mauryInscription : mars 2009 Messages : 116 ![]() |
Bonjour.
Je cherche a recuperer le code d'echeance pour un fournisseur donne. Dans mon fichier Access j'ai relie a des tables Oracle par ODBC. Puis, dans une requete Access, je relie les 3 tables et je rajoute mes criteres. Dans VBA, pour afficher le code echance dans un champ de mon formulaire, j'ouvre la requete Access par ADO : Code :
Quand j'ouvre la requete manuellement, elle n'est pas vide. D'autre part, en utilisant DAO au lieu de ADO, le programme trouve bien un enregistrement dans la requete. ADO de la maniere suivante : Code :
Savez-vous a quoi ca peut etre du ? Merci. Cdlt. |
||||
|
|
00
|
|
|
#2 |
![]() ![]() |
Bonjour
Essayes de faire un MoveLast et un MoveFirst de ton recordset pour voir. Philippe
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon ![]() Si vous pensez commencer sans un livre, oublier : livres pour débuter Vous pouvez consulter mes articles sur Access et PowerPoint Le blog Office. Inutile de m'envoyer un MP pour des questions techniques ou de me relancer , je n'y répondrais pas. |
|
|
00
|
|
|
#3 | ||
|
Membre habitué
![]() jean mauryInscription : mars 2009 Messages : 116 ![]() |
Bonjour.
Que ce soit en rajoutant un movelast et un movefirst ou directement un movefirst, j'obtient le meme message d'erreur comme quoi il n'y a pas d'enregistrement. En faisant : Code :
Cdlt. |
||
|
|
00
|
|
|
#4 | ||
|
Expert Confirmé
![]() Chercheur de bonheur Inscription : août 2007 Messages : 2 256 ![]() |
Bonjour,
je n'utilise pas oracle, mais il me semble bizarre que tu n'initialises pas le ConnectionString de ta connection oConn. Quelque-chose du genre : Code :
__________________
(\ _ /) Cordialement G@dz (='.'=) (")-(") Vous avez des neurones. Sollicitez-les. ![]() . Si vous êtes aidé, pensez à Voter.
|
||
|
|
00
|
|
|
#5 |
|
Membre habitué
![]() jean mauryInscription : mars 2009 Messages : 116 ![]() |
Bonjour.
J'utilise des tables reliees a Oracle par ODBC et ca fonctionne en temps normal. J'accede donc aux tables qui se trouvent dans Access. Je me connecte a ma base Access actuelle et non pas a Oracle. Dans ma requete Access j'utilise aussi des valeurs que j'ai recupere dans mon formulaire. C'est vrai que je pourrais remplacer par une connection directe a Oracle dans mon programme. Mais j'ai decide de faire autrement. Ce que je ne comprend pas, c'est pourquoi par DAO le programme trouve les donnees alors que par ADO aucun enregistrement n'est trouve. Cdlt. |
|
|
00
|
|
|
#6 | |
|
Expert Confirmé
![]() Chercheur de bonheur Inscription : août 2007 Messages : 2 256 ![]() |
Bonjour,
Citation:
Tu peux accéder à ta requête comme un simple recordset de ta CurrentDB.
__________________
(\ _ /) Cordialement G@dz (='.'=) (")-(") Vous avez des neurones. Sollicitez-les. ![]() . Si vous êtes aidé, pensez à Voter.
|
|
|
|
00
|
|
|
#7 |
|
Membre confirmé
![]() Inscription : juillet 2006 Messages : 346 ![]() |
Bonjour,
Je vais peut-être dire une betise, mais si vous cherchez à ne retourner qu'un seul enregistrement vous devriez peut être utiliser un dlookup ? |
|
|
00
|
|
|
#8 | |
|
Membre habitué
![]() jean mauryInscription : mars 2009 Messages : 116 ![]() |
Citation:
Probleme d'une requete sql dans le module VBA : les champs texte ne me recuperent pas la valeur en tant que tel mais la requete sql en elle meme ("select......from...."). Je suis alors oblige de remplacer mon champ texte par un autre type de champ, sauf erreur de ma part un champ de liste (je ne me souviens plus comment s'appelle exactement en francais ce type de champ, j'ai la version polonaise au bureau). D'autre part, il semble que ca pose probleme de melanger de l'ADO et du DAO dans un programme. Si aucune solution n'est trouvee, je modifierai le type de champ de mon formulaire pour recuperer la valeur recherchee par une requete sql dans VBA. Par contre, chose que j'ai constate : avec le Runtime Access, meme la requete sql ne permet pas de recuperer la valeur cherchee. Et je veux que les utilisateurs utilisent le Runtime et non la version complete comme actuellement. Mais mes problemes avec le Runtime sera mentionne dans un autre appel. Cdlt. |
|
|
|
00
|
|
|
#9 | |||
|
Expert Confirmé
![]() Chercheur de bonheur Inscription : août 2007 Messages : 2 256 ![]() |
Bonjour,
Citation:
Un exemple, au hasard, sorti de mes codes. où on suppose que ta requete existe et est stockée ainsi que la table dans access (sinon il faut ADO, DAO, ...) ce code extrait un numéro d'un classeur excel et vérifie qu'on a enregistré dessus dans access (Booking_Attendees) Code :
__________________
(\ _ /) Cordialement G@dz (='.'=) (")-(") Vous avez des neurones. Sollicitez-les. ![]() . Si vous êtes aidé, pensez à Voter.
|
|||
|
|
00
|
|
|
#10 |
|
Membre habitué
![]() jean mauryInscription : mars 2009 Messages : 116 ![]() |
Bonjour.
Merci pour les reponses. J'ai resolu mon probleme autrement. Sans rentrer dans les details, j'accede par ADO a une table MYSQL qui contient les donnees d'Oracle (pour une question de rapidite d'acces) au lieu d'acceder aux donnees d'une requete reliee par ODBC a Oracle. Et ca fonctionne. Cdlt. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com