Qui est bon en vba ?
bounty206
-
bounty206 -
bounty206 -
Bonjour,
Je dois importer sous Excel le résultat d'une requete sql sous Access qui demande un paramètre
ex : select CONSO*PARAM from TABLE_CONSO
PARAM n'étant pas défini comme un champ de la table TABLE_CONSO, Access me demande de rentrer une valeur manuellement (quand j'exécute la requète sous Access).
Quand j'essaie d'exécuter la requète à partir d'Excel (à partir de l'assistant Requçêtes), ca ne marche pas, je reçoit l'erreur : Trop peu de paramètres, 1 attendu.
Quel est le code VBA pour rentrer le paramètre à partir d'Excel sans avoir à réécrire la requète dans le code ?
Merci
Je dois importer sous Excel le résultat d'une requete sql sous Access qui demande un paramètre
ex : select CONSO*PARAM from TABLE_CONSO
PARAM n'étant pas défini comme un champ de la table TABLE_CONSO, Access me demande de rentrer une valeur manuellement (quand j'exécute la requète sous Access).
Quand j'essaie d'exécuter la requète à partir d'Excel (à partir de l'assistant Requçêtes), ca ne marche pas, je reçoit l'erreur : Trop peu de paramètres, 1 attendu.
Quel est le code VBA pour rentrer le paramètre à partir d'Excel sans avoir à réécrire la requète dans le code ?
Merci
3 réponses
Voilà un code qui a fonctionné :
Private Sub Bouton27_Click()
Dim qdf As QueryDef
Set qdf = CurrentDb.QueryDefs("parunité vers excel")
qdf.Parameters("Année sélectionnée") = Secur.AnnéeDeTravail
qdf.Parameters("Code unité") = Me![codunit]
On Error Resume Next
CurrentDb.TableDefs.Delete "#Temporary Table#"
On Error GoTo 0
qdf.Execute
qdf.Close
DoCmd.OutputTo acOutputTable, "#Temporary Table#", acFormatXLS, , False
CurrentDb.TableDefs.Delete "#Temporary Table#"
End Sub
Private Sub Bouton27_Click()
Dim qdf As QueryDef
Set qdf = CurrentDb.QueryDefs("parunité vers excel")
qdf.Parameters("Année sélectionnée") = Secur.AnnéeDeTravail
qdf.Parameters("Code unité") = Me![codunit]
On Error Resume Next
CurrentDb.TableDefs.Delete "#Temporary Table#"
On Error GoTo 0
qdf.Execute
qdf.Close
DoCmd.OutputTo acOutputTable, "#Temporary Table#", acFormatXLS, , False
CurrentDb.TableDefs.Delete "#Temporary Table#"
End Sub