Exporter des données sur excel à partir d'Access

Résolu
benbill Messages postés 21 Date d'inscription mercredi 18 mai 2005 Statut Membre Dernière intervention 21 juin 2005 - 26 mai 2005 à 09:22
AnisBenM Messages postés 1 Date d'inscription dimanche 29 octobre 2006 Statut Membre Dernière intervention 19 août 2009 - 19 août 2009 à 12:09
Bonjour

J'ai une requête sur Access que je voudrais faire passer sur excel pour pouvoir la retravailler.

Comment puis-je faire ?

Merci d'avance

13 réponses

cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
26 mai 2005 à 15:47
Coches reponses acceptées alors

It@li@
3
tbbuim1 Messages postés 940 Date d'inscription jeudi 20 février 2003 Statut Membre Dernière intervention 3 février 2011 9
26 mai 2005 à 09:47
?????????????????????????

Tu veux pouvoir passer le résultat de ta requête sous excel tu veux dire...

Il suffit de faire une connexion sur une feuille excel.

De lancer un recordset de ta requête et d'inclure chaque champ dans les colonnes et lignes de ta feuille Excel.

Il y a une multitude d'aide à ce sujet sur vbfrance, sinon va voir dans
les messages que j'ai envoyé dernièrement, j'ai laissé quelques
fonctions pour faire ça.

TBBUIM
0
benbill Messages postés 21 Date d'inscription mercredi 18 mai 2005 Statut Membre Dernière intervention 21 juin 2005
26 mai 2005 à 10:23
oui c'est ca que je veux faire

pourrait tu me donner un exemple de code stp car je ne sais pas comment m'y prendre

merci !
0
jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
26 mai 2005 à 10:28
Bonjour,



Projet / références cocher "Microsoft Excel 9.0 Object Library"



Dim Db As Database

Dim Req As Recordset

Set Db = OpenDatabase("C:\Program files\microsoft Visual Studio\vb98\Voyage.mdb")

Set Req = Db.OpenRecordset("SELECT *FROM Liste")



Text1.Text = Req("Destinations")

Text2.Text = Req("Prix")



Req.Close

Db.Close

Set Req = Nothing

Set Db = Nothing



jpleroisse
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
26 mai 2005 à 10:31
Re,

Excuse, me suis tromper de code, il n'est pas complet, tu dois ouvrir Excel avant et remplacer TextBox par Range.



jpleroisse
0
benbill Messages postés 21 Date d'inscription mercredi 18 mai 2005 Statut Membre Dernière intervention 21 juin 2005
26 mai 2005 à 11:21
merci jpleroisse
je vais essayer !!!
encore merci.
bye
0
jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
26 mai 2005 à 12:22
Re,

N'oublie pas Projet / références Dao 3.51 (ou 4.0) suivant version et Excel 9.0 Object Library



Private Sub Command1_Click()

Dim Db As Database

Dim Req As Recordset

Set Db = OpenDatabase("C:\Program files\microsoft Visual Studio\vb98\Voyage.mdb")

Set Req = Db.OpenRecordset("SELECT * FROM Liste")



Dim objXL As New Excel.Application

Dim wbXL As New Excel.Workbook

Dim wsXL As New Excel.Worksheet



If Not IsObject(objXL) Then

MsgBox "Vous Avez Besoin de Microsoft Excel pour cette Fonction", vbExclamation, "Excel"

Exit Sub

End If



' Ouvre Excel

objXL.Visible = True

Set wbXL = objXL.Workbooks.Add

Set wsXL = objXL.ActiveSheet

wsXL.Cells(1, 1).Value = Req("Destinations")

wsXL.Cells(1, 2).Value = Req("Année")

objXL.ActiveWorkBook.Close False

objXL.Quit

Set Req = Nothing

Set Db = Nothing



End Sub



jpleroisse
0
jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
26 mai 2005 à 12:55
Si tu veux travailler à partir d'Excel, vas voir ma source



http://www.vbfrance.com/code.aspx?ID=31326



cele fait, à mon avis exactement ce que tu veux faire.



jpleroisse
0
cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
26 mai 2005 à 13:44
Pas mal ta source jpleroisse mais tu oublis de tester la Présence d'enregistrements aprés la requete :

Private Sub Command1_Click()

Dim Db As Database
Dim Req As Recordset
Dim objXL As New Excel.Application
Dim wbXL As New Excel.Workbook
Dim wsXL As New Excel.Worksheet

If Not IsObject(objXL) Then
MsgBox "Vous Avez Besoin de Microsoft Excel pour cette Fonction", vbExclamation, "Excel"
Exit Sub
End If

Set Db = OpenDatabase("C:\Program files\microsoft Visual Studio\vb98\Voyage.mdb")
Set Req = Db.OpenRecordset("SELECT * FROM Liste")
If Req.Recordcount <>0 Then ' Si il y a au moins 1 enregistrement
' Ouvre Excel
objXL.Visible = True
Set wbXL = objXL.Workbooks.Add
Set wsXL = objXL.ActiveSheet
wsXL.Cells(1, 1).Value = Req("Destinations")
wsXL.Cells(1, 2).Value = Req("Année")
objXL.ActiveWorkBook.Close False
objXL.Quit
End If

Set Req = Nothing
Set Db = Nothing

End Sub

It@li@
0
benbill Messages postés 21 Date d'inscription mercredi 18 mai 2005 Statut Membre Dernière intervention 21 juin 2005
26 mai 2005 à 14:11
Merci pour votre aide
J'ai enfin trouvé comment faire.

a+
0
cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
26 mai 2005 à 14:32
EXpliques nous !!

It@li@
0
benbill Messages postés 21 Date d'inscription mercredi 18 mai 2005 Statut Membre Dernière intervention 21 juin 2005
26 mai 2005 à 15:40
bah j'ai fais comme vous m'avez expliqués toi et jpleroisse.


encore merci pour votre aide


" J'sais pas ùu j'ai été fourré ma tête mais j'ai plein de morpions, c'est vraiment dégeulasse "
0
AnisBenM Messages postés 1 Date d'inscription dimanche 29 octobre 2006 Statut Membre Dernière intervention 19 août 2009
19 août 2009 à 12:09
Je sais que ce post est ancien mais il m'a récemment servi.
J'apporte une petite rectification à la remarque d'ITALIA. Le test qu'il propose ne fonctionne pas correctement. Le moyen le plus sûr et le plus efficace est de vérifier si EOF et BOF valent tous deux True (cad qu'il n'y a aucun enregistrement).

Private Sub Command1_Click()

Dim Db As Database
Dim Req As Recordset
Dim objXL As New Excel.Application
Dim wbXL As New Excel.Workbook
Dim wsXL As New Excel.Worksheet

If Not IsObject(objXL) Then
MsgBox "Vous Avez Besoin de Microsoft Excel pour cette Fonction", vbExclamation, "Excel"
Exit Sub
End If

Set Db = OpenDatabase("C:\Program files\microsoft Visual Studio\vb98\Voyage.mdb")
Set Req = Db.OpenRecordset("SELECT * FROM Liste")
If Not myRecordSet.EOF And Not myRecordSet.BOF Then
' Ouvre Excel
objXL.Visible = True
Set wbXL = objXL.Workbooks.Add
Set wsXL = objXL.ActiveSheet
wsXL.Cells(1, 1).Value = Req("Destinations")
wsXL.Cells(1, 2).Value = Req("Année")
objXL.ActiveWorkBook.Close False
objXL.Quit
End If

Set Req = Nothing
Set Db = Nothing

End Sub


Anis
0