Données Excel vers Access

robide

XLDnaute Nouveau
Bonjour,
Je suis débutante avec VBA et je dois réaliser un projet qui permet de comparer les prix de plusieurs concurrents. Pour cela, j'ai déja un fichier Excel avec les données (pour Darty notamment), fichier dans le lien ci dessous.
Mais, pour faciliter les recherches et le stockage, je dois les transférer vers Access (fichier également joint).

.:: Partage-facile.com ::. La simplicité du partage de fichiers

Voila donc mes fichiers sur lesquels je travaille comme une folle. Vous verrez d'ailleurs plusieurs macros VBA sous excel que je tentais de mettre en oeuvre pour parvenir à simplement exporter la feuille "BASE" d'excel dans Access.

Je compte sur votre expérience pour m'aider à réaliser ce projet.

Merci :D
 

chris

XLDnaute Barbatruc
Re : Données Excel vers Access

Bonjour

Je n'ai pas téléchargé ton fichier mais pourquoi ne pas tout simplement faire l'inverse : attacher ou importer les données d'Excel depuis Access ?
De même tu peux définir toutes les requêtes nécessaires dans Access et afficher les données résultantes dans Excel tout cela sans VBA ou très peu.
 

robide

XLDnaute Nouveau
Re : Données Excel vers Access

Bonjour,

Je tiens d'abord à répondre à Staple1600 : merci de vous inquiéter, mais ces données ne sont absolument pas confidentielles car disponibles sur Internet. Merci de votre inquiétude tout de même.

Chris, je dois absolument utiliser Access, ca fais partie des contraintes.

Merci à vous 2 pour votre intérêt à mon problème.
Peut-être vous aurez bientôt quelque chose pour m'aider...

:D:cool::confused:
 

robide

XLDnaute Nouveau
Re : Données Excel vers Access

Re
je comprends bien Chris que vous vous voulez vraiment me simplifier la tâche, mais la consigne est vraiment de faire un code sous Excel qui permet d'exporter les données sous Access.
Quelle idée !!
J'ai vu sur le Net plusieurs macros qui permettent de faire cela mais avec moi rien ne fonctionne correctement, et c'est bien dommage !

Mais merci quand même.
:) :cool:
 

robide

XLDnaute Nouveau
Re : Données Excel vers Access

Voila la macro sur laquelle je comptais le plus, mais c'est la ligne en rouge qui me fait une erreur :

Sub ExportDonneesExcelDansAccess()
AjoutDansTableAccess "ProduitsBrun"
End Sub

Private Sub AjoutDansTableAccess(ProduitsBrun As String)

Dim ConnectBD As Object
Dim Rs As Object
Dim appExcel As Object
Dim Classeur As Object
Dim Feuille As Object
Dim i As Integer
Dim j As Integer

MyPath = ActiveWorkbook.Path
Application.StatusBar = "DARTY BRUN.xls"
' Déclaration de référence d'objet à une variable
Set appExcel = CreateObject("Excel.Application")
Set Classeur = appExcel.Workbooks.Open(MyPath & "\DARTY BRUN.xls")
Set Feuille = Classeur.Worksheets("BASE")
'Connexion à la base Access
ConnecterBase ConnectBD, Rs
With Rs
.CursorType = 1
.LockType = 3
.Open "SELECT * FROM [ProduitsBrun]", ConnectBD
'Ajout des enregistrements situés à partir de la ligne 2 afin d'éviter les entêtes de colonnes
For i = 7 To Feuille.Range("A65536").End(-4162).Row
.AddNew
.Fields("LIBELLE") = Feuille.Cells(i, 1)
.Fields("PVTTC") = Feuille.Cells(i, 2)
.Update
Next i
End With

Application.StatusBar = "réussite"
ConnectBD.Close
Classeur.Close
appExcel.Quit
' Met fin à l'association entre la variable et l'objet associé
Set appExcel = Nothing
Set Classeur = Nothing
Set Feuille = Nothing
Set ConnectBD = Nothing
Set Rs = Nothing

End Sub

Private Sub ConnecterBase(ConnectBD As Object, Rs As Object)

MyPath = ActiveWorkbook.Path & "\"
' Déclaration de référence d'objet à une variable
Set ConnectBD = CreateObject("ADODB.Connection")
Set Rs = CreateObject("ADODB.Recordset")
With ConnectBD
.Provider = "Microsoft.Jet.OLEDB.4.0"
'Ici le chemin et le nom de la base Access
.ConnectionString = MyPath & "DARTYBRUN03.mdb"
.Open
End With

End Sub


Voila.
 

Discussions similaires

Statistiques des forums

Discussions
312 859
Messages
2 092 923
Membres
105 565
dernier inscrit
HervéD