Bonjour à tous,
Je me vois contrain de déveloper un système automatiser de récupération de données stockées dans Access pour pouvoir les traités dans Excel. J'ai pas de problème quant au traitement ou autres. Mon problème se confine à l'importation des données via VBA car un simple bouton "mise à jours" doit importer les données manquante.
Ce que je ne parvient pas à faire c'est de communiquer avec la base de données. En fesant des recherches, j'ai vu que les deux soft pouvais très bien communiquer entre eux mais via quelque chose qui s'appel RecordSet ADO ou DAO.
Je cherche donc quelqu'un qui peux m'éclairer sur la marche à suivre pour créer le code qui permet d'importer des données d'Access ou même un exemple de code.
J'ai crée un bout de code qui me permet de contacter la base de données mais une fenetre de paramaitrage de MS JET OLE DB s'ouvre et je ne sais pas trop quoi ecrire dans les champ d'une part et dans tout les cas, j'aimerais que ses parametre soit configuré dans le code VBA et pas à la main après coup
Le code:
Si quelqu'un qui s'y connait bien en base de données et communication Access => Excel pourrais me renseigner je lui en serait très reconnaissant.
Merci de votre aide
Cordialement
Vorens
Je me vois contrain de déveloper un système automatiser de récupération de données stockées dans Access pour pouvoir les traités dans Excel. J'ai pas de problème quant au traitement ou autres. Mon problème se confine à l'importation des données via VBA car un simple bouton "mise à jours" doit importer les données manquante.
Ce que je ne parvient pas à faire c'est de communiquer avec la base de données. En fesant des recherches, j'ai vu que les deux soft pouvais très bien communiquer entre eux mais via quelque chose qui s'appel RecordSet ADO ou DAO.
Je cherche donc quelqu'un qui peux m'éclairer sur la marche à suivre pour créer le code qui permet d'importer des données d'Access ou même un exemple de code.
J'ai crée un bout de code qui me permet de contacter la base de données mais une fenetre de paramaitrage de MS JET OLE DB s'ouvre et je ne sais pas trop quoi ecrire dans les champ d'une part et dans tout les cas, j'aimerais que ses parametre soit configuré dans le code VBA et pas à la main après coup
Le code:
Code:
NomFichier = "StationData"
FichierFini = CheminAcce & NomFichier & ".mdb"
Sheets("Importation").Activate
With ActiveSheet.QueryTables.Add(Connection:=Array( _
"OLEDB;Provider=Microsoft.Jet.OLEDB.4.0;Password="""";User ID=Admin;Data Source=FichierFini;Mode=Share Deny Write;Extended Properties="""";Jet OLEDB:System d" _
, _
"atabase="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Database Password="""";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=0;J" _
, _
"et OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="""";Jet OLEDB:Create Syst" _
, _
"em Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replic" _
, "a Repair=False;Jet OLEDB:SFP=False"), Destination:=Range("A33"))
.CommandType = xlCmdTable
.CommandText = Array("Donnees")
.Name = "NomFichier"
.FieldNames = False
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.SourceDataFile = _
"FichierFini"
.Refresh BackgroundQuery:=False
End With
Si quelqu'un qui s'y connait bien en base de données et communication Access => Excel pourrais me renseigner je lui en serait très reconnaissant.
Merci de votre aide
Cordialement
Vorens