Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Extraire un enregistrement ACCESS par Query dans EXCEL

D

DB

Guest
Bonjour à Tous,
Et merci d’avance à ceux qui s’intéresseront à mon problème.
Je voudrai extraire un « devis » d’une table Access par son N°.
J’ai essayé le QUERY : (avec l’enregistreur de macro) par requéte crée (Données/Données externes/Créer une requête… Première constatation : à la lecture de ce qu’à « écrit » VBA, plein de lignes rouges et macro partiellement enregistrée (prob de nombre de champs dans la table) ??? (cf Macro_Query_Rouge)
Deuxième essai d’enregistrement : en ne prenant pas l’intégralité des champs de la table : cela marche. Mais maintenant, je voudrai « passer » à cette macro par l’intermédiaire d’un InputBox, le N° du Devis à extraire… (Macro_Query_Input : « erreur exécution 1004 – erreur générale ODBC»).
Troisième essai : par l’intermédiaire d’une macro par requête enregistrée (Données/Données externes/Exécuter une requête enregistrée)… fichier XXXX.dqy … Mais comment lui passer le N° du devis à extraire !!! ??? …
A bientôt, je l’espère.
DB
 

Pièces jointes

  • Essaiquery.zip
    0 bytes · Affichages: 31
M

Michel_M

Guest
Bonjour DB et le Forum,

Je n'ai pas réussi à télécharger ton zip...


La solution passe à mon avis (mais…) passe une requête SQL en utilisant la technologie DAO (ou ADO)

Si tu ne connais pas ces belles inventions, on vit très bien sans elles, tu peux essayer ceci (fais le sur un classeur brouillon…):

Avec l'enregistreur de macro, tu exécutes ta requête avec MSQuery, lorsque celui-ci te demande si veux mettre des filtres tu sélectionnes le champ de tes numeros de devis ; est égal à; tu écris un numero existant

Une fois terminé, tu vas dans l'éditeur de macro, avec un inputbox ou autre, tu affectes à la variable zaza par exemple le numéro du devis que tu veux voir

Tu as une ligne qui commence par "SELECT…. Et à la fin WHERE où tu trouves ton champ de num devis et le numero saisi lors de l'enregistrement de query

Tu remplace ce chiffre avec " & (zaza) &")" attention:n'oublie pas la parenthèse de fin d'array


Ce ne sera pas géant comme macro mais ça devrait marcher

A+ bon courage
Michel
 
D

DB

Guest
Merci Michel de t'être penché sur "mon cas".
Je viens d'essayer ta méthode. J'avais fait un peu la même chose avec une variable (que cependant, je n'avais pas mis entre "" et ()...
Malheureusement, le "résultat" est le même : toujours cette erreur Odbc "1004" et le debogage s'arrête sur
.Refresh BackgroundQuery:=False
Cela peut-il être une indication supplémentaire ???
Ps : je peux t’envoyer mon doc (mes docs) puisqu’il y a la table Access avec…
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…