OVH Cloud OVH Cloud

Interroger une base access

6 réponses
Avatar
Eric Beaumard
Bonsoir

J'ai une base de donnée Acess locale et une requête SQL.
Je sais l'interroger avec ma requête depuis Delphi avec ADO,
ça fonctionne.

J'aimerais faire la même chose depuis Excel en VBA.
Construire une fonction qui permettrait de ranger dans une cellule
le résultat de la requête.

Comment faire ?

Cordialement

Eric

6 réponses

Avatar
lSteph
Bonsoir,
Avec Acces le menu données d'excel
te permet de mettre en relation une table où le résultat d'une requète
access
avec une plage de données, pourvu que le résultat n'excède pas la taille
admise par excel

255 *65536

a+

lSteph


"Eric Beaumard" a écrit dans le message de news:
449c56d3$0$1175$
Bonsoir

J'ai une base de donnée Acess locale et une requête SQL.
Je sais l'interroger avec ma requête depuis Delphi avec ADO,
ça fonctionne.

J'aimerais faire la même chose depuis Excel en VBA.
Construire une fonction qui permettrait de ranger dans une cellule
le résultat de la requête.

Comment faire ?

Cordialement

Eric



Avatar
ABED HADDOU
Bonsoir à * Eric Beaumard * et à toi aussi * Lsteph *
en VBA Voici quesque j'ai trouver pour toi
http://www.vbfrance.com/code.aspx?ID’4

Cordialement
Abed_H



"Eric Beaumard" wrote:

Bonsoir

J'ai une base de donnée Acess locale et une requête SQL.
Je sais l'interroger avec ma requête depuis Delphi avec ADO,
ça fonctionne.

J'aimerais faire la même chose depuis Excel en VBA.
Construire une fonction qui permettrait de ranger dans une cellule
le résultat de la requête.

Comment faire ?

Cordialement

Eric





Avatar
Eric Beaumard
Merci pour ta réponse. Mon pb est que je dois absolument
questionner la base depuis VBA parce que je dois paramétrer
la requête avec des données contenues dans des cellules
de la feuille. Ces données étant donc extraites par VBA.

Eric




"lSteph" a écrit dans le message de news:
u%
Bonsoir,
Avec Acces le menu données d'excel
te permet de mettre en relation une table où le résultat d'une requète
access
avec une plage de données, pourvu que le résultat n'excède pas la taille
admise par excel

255 *65536

a+

lSteph


"Eric Beaumard" a écrit dans le message de news:
449c56d3$0$1175$
Bonsoir

J'ai une base de donnée Acess locale et une requête SQL.
Je sais l'interroger avec ma requête depuis Delphi avec ADO,
ça fonctionne.

J'aimerais faire la même chose depuis Excel en VBA.
Construire une fonction qui permettrait de ranger dans une cellule
le résultat de la requête.

Comment faire ?

Cordialement

Eric







Avatar
JB
Bonjour,

Exemple simple.

Sub Lit_client()
'Cocher DAO 3.6 dans Outils/Référence
rep_appli = ActiveWorkbook.Path
Dim db As dao.Database
Dim rs As dao.Recordset
Set db = OpenDatabase(rep_appli & "access2000.mdb")
Set rs = db.OpenRecordset("Select * FROM client")
i = 2
Do While Not rs.EOF
Cells(i, 10) = rs!nom_client
Cells(i, 11) = rs!ville
rs.MoveNext
i = i + 1
Loop
End Sub


Cordialement JB



Bonsoir

J'ai une base de donnée Acess locale et une requête SQL.
Je sais l'interroger avec ma requête depuis Delphi avec ADO,
ça fonctionne.

J'aimerais faire la même chose depuis Excel en VBA.
Construire une fonction qui permettrait de ranger dans une cellule
le résultat de la requête.

Comment faire ?

Cordialement

Eric


Avatar
Eric Beaumard
Merci pour la réponse mais je fais ça avec la Béta 1
d'excel 12 et pas moyen de trouver où cocher DAO 3.XX ...
VAB me jette en prenant "Dim Connection As adodb.Connection"
pour un type défini par l'utilisateur, ce qui est logique.

Eric


"JB" a écrit dans le message de news:

Bonjour,

Exemple simple.

Sub Lit_client()
'Cocher DAO 3.6 dans Outils/Référence
rep_appli = ActiveWorkbook.Path
Dim db As dao.Database
Dim rs As dao.Recordset
Set db = OpenDatabase(rep_appli & "access2000.mdb")
Set rs = db.OpenRecordset("Select * FROM client")
i = 2
Do While Not rs.EOF
Cells(i, 10) = rs!nom_client
Cells(i, 11) = rs!ville
rs.MoveNext
i = i + 1
Loop
End Sub


Cordialement JB



Bonsoir

J'ai une base de donnée Acess locale et une requête SQL.
Je sais l'interroger avec ma requête depuis Delphi avec ADO,
ça fonctionne.

J'aimerais faire la même chose depuis Excel en VBA.
Construire une fonction qui permettrait de ranger dans une cellule
le résultat de la requête.

Comment faire ?

Cordialement

Eric


Avatar
Eric Beaumard
Heu .. autant pour moi je cherchais dans excel,
c'était dans VB. Donc Ok j'ai trouvé "microsoft DAO 3.6"
et l'objet database est désormais vu.

Je passe à la suite ...

Eric

"JB" a écrit dans le message de news:

Bonjour,

Exemple simple.

Sub Lit_client()
'Cocher DAO 3.6 dans Outils/Référence
rep_appli = ActiveWorkbook.Path
Dim db As dao.Database
Dim rs As dao.Recordset
Set db = OpenDatabase(rep_appli & "access2000.mdb")
Set rs = db.OpenRecordset("Select * FROM client")
i = 2
Do While Not rs.EOF
Cells(i, 10) = rs!nom_client
Cells(i, 11) = rs!ville
rs.MoveNext
i = i + 1
Loop
End Sub


Cordialement JB



Bonsoir

J'ai une base de donnée Acess locale et une requête SQL.
Je sais l'interroger avec ma requête depuis Delphi avec ADO,
ça fonctionne.

J'aimerais faire la même chose depuis Excel en VBA.
Construire une fonction qui permettrait de ranger dans une cellule
le résultat de la requête.

Comment faire ?

Cordialement

Eric