OVH Cloud OVH Cloud

liaison access

3 réponses
Avatar
cousinhub
Bonsoir,
par une procédure aimablement fournie par JB, je peux insérer une requête
dans excel à partir d'une table Access.
Cependant, pourriez-vous m'indiquer quelle ligne de code insérer afin de
n'obtenir que les données comprises entre le 01/12/06 et 03/12/06 (toutes
dates incluses)
voici le code :

Sub import_access()

Dim bd As Database
Dim rs As Recordset
Set bd = OpenDatabase("F:\SOCIETE\GEST07.MDB")
Set rs = bd.OpenRecordset("Select * From `Ligne Facture`")
i = 2
Do While Not rs.EOF
Cells(i, 1) = rs!DateFacture
Cells(i, 2) = rs!CodeFacture
Cells(i, 3) = rs!CodeArticle
Cells(i, 4) = rs!LibelleArticle
Cells(i, 5) = rs!Quantite
Cells(i, 6) = rs!PrixTotalLigne

rs.MoveNext
i = i + 1
Loop
End Sub

3 réponses

Avatar
cousinhub
Oupssss!
j'oubliais
Merci de votre précieuse collaboration
Avatar
JB
Bonsoir,

Sub essaiDate()
'cocher Microsoft DAO 3.6 dans Outils/Références
Dim début As Date, fin As Date
Dim bd As Database
Dim rs As Recordset
Set bd = OpenDatabase(ActiveWorkbook.Path & "access2000.mdb")
début = #5/21/1970#
fin = #6/21/1970#
Sql = "Select * From Client Where dateNaiss>=" & ConvDate(début) &
" AND dateNaiss<=" & ConvDate(fin)
Set rs = bd.OpenRecordset(Sql)
i = 2
Do While Not rs.EOF
Cells(i, 1) = rs!Nom_Client
Cells(i, 2) = rs!Ville
Cells(i, 3) = rs!Salaire
Cells(i, 4) = rs!datenaiss
rs.MoveNext
i = i + 1
Loop
End Sub

Function ConvDate(MaDate As Date) As String
ConvDate = "#" & Month(MaDate) & "/" & Day(MaDate) & "/" &
Year(MaDate) & "#"
End Function

Cordialement JB


Bonsoir,
par une procédure aimablement fournie par JB, je peux insérer une req uête
dans excel à partir d'une table Access.
Cependant, pourriez-vous m'indiquer quelle ligne de code insérer afin de
n'obtenir que les données comprises entre le 01/12/06 et 03/12/06 (tout es
dates incluses)
voici le code :

Sub import_access()

Dim bd As Database
Dim rs As Recordset
Set bd = OpenDatabase("F:SOCIETEGEST07.MDB")
Set rs = bd.OpenRecordset("Select * From `Ligne Facture`")
i = 2
Do While Not rs.EOF
Cells(i, 1) = rs!DateFacture
Cells(i, 2) = rs!CodeFacture
Cells(i, 3) = rs!CodeArticle
Cells(i, 4) = rs!LibelleArticle
Cells(i, 5) = rs!Quantite
Cells(i, 6) = rs!PrixTotalLigne

rs.MoveNext
i = i + 1
Loop
End Sub


Avatar
cousinhub
Merci,
Je vais essayer cela sans tarder.
Je me permets de te poser une autre question, toujours sur l'importation à
partir d'excel.
Avec ton code (que je viens d'essayer et qui marche du feu de dieu, je t'en
remercie), j'ai un souci :
Si le programme fonctionnant sous Access est fermé, pas de Pb, je récupère
bien toutes les données voulues.
Par contre, dès que je lance l'application, la première mise à jour est
autorisée, et si je veux en refaire une autre, excel me met un message
d'alerte : "erreur exécution 3050" "Impossible de verrouiller le fichier"
En créant une requête sous excel (Données/Données externes/Créer une
requête...)
Si le programme fonctionnant sous Access est fermé, pas de Pb, je récupère
bien toutes les données voulues.
Par contre, dès que je lance l'application, la première mise à jour est
autorisée, et si je veux en refaire une autre, excel me met un message
d'alerte : (Impossible d'utiliser "|", fichier en cours d'utilisation)
Connaîtrais-tu ce problème ?
Merci