VBA : Récup de données excel dans access

Le
Jean-Marie VIGNEAUD
Bonjour,

Je travaille sur office 97.

Je dois en fait récupérer, dans un nombre indéterminé de fichiers excel 97
présent dans le même répertoire, toutes les cellules A1 de la feuille 1 pour
en écrire le contenu dans une table access, tout ceci à partir d'access 97
et en VBA.

Si vous avez des pistes de réflexion, je suis preneur.

Merci d'avance

Cordialement à tous,

Jean-Marie
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Raymond [mvp]
Le #6275411
Bonjour.

tu vas pouvoir fêter le 10e anniversaire d'access 97 ? tu sais qu'il n'est
plus supporté depuis longtemps par Microsoft ?
ce qu'il faut faire:
une boucle pour obtenir le nom des fichiers excel, par la fonction Dir
dans cette boucle faire un import par la commande DoCmd.TransferSpreadsheet
de la plage a1:a1
j'espère que tout ça existait bien sous 97.

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/
PowerShell, une nouvelle approche de l'administration de l'environnement
Windows
http://www.comscamp.com/Tracker/Redirect.ashx?linkid_73b247-3260-4fed-861f-bb587f7ef413


"Jean-Marie VIGNEAUD" message de news: f1acmf$k2s$
| Bonjour,
|
| Je travaille sur office 97.
|
| Je dois en fait récupérer, dans un nombre indéterminé de fichiers excel 97
| présent dans le même répertoire, toutes les cellules A1 de la feuille 1
pour
| en écrire le contenu dans une table access, tout ceci à partir d'access 97
| et en VBA.
|
| Si vous avez des pistes de réflexion, je suis preneur.
|
| Merci d'avance
|
| Cordialement à tous,
|
| Jean-Marie
|
|
Fabien
Le #6275121
Bonjour,

Je travaille sur office 97.

Je dois en fait récupérer, dans un nombre indéterminé de fichiers excel 97
présent dans le même répertoire, toutes les cellules A1 de la feuille 1 pour
en écrire le contenu dans une table access, tout ceci à partir d'access 97
et en VBA.

Si vous avez des pistes de réflexion, je suis preneur.

Merci d'avance

Cordialement à tous,

Jean-Marie


Bonjour Jean-Marie

Autre piste
Sub Import_contenu_repertoire(Dossier As String)
Dim rep, Nom_Tbl As String
'obtient le premier fichier ou répertoire qui est dans Dossier
rep = Dir(Dossier & "*.xls", vbDirectory)
'boucle tant que le répertoire n'a pas été entièrement parcouru
On Error GoTo Erreur
Do While (rep <> "")
'teste si c'est un fichier ou un répertoire
If (GetAttr(Dossier & rep) And vbDirectory) = vbDirectory Then
'MsgBox "Répertoire " & rep
Else
Nom_Tbl = Left(rep, Len(rep) - 4)
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9,
Nom_Tbl, Dossier & rep, False ', rep & "!"
' Ajout d'un N° automatique pour conserver l'ordre des lignes
DoCmd.RunSQL "ALTER TABLE [" & Nom_Tbl & "] ADD COLUMN [Numéro]
COUNTER"
'découpage de la table en plusieurs table puisque une feuille de calcul
contient plusieurs tableau
Decoupe Nom_Tbl
End If
Suite:
'passe à l'élément suivant
rep = Dir
Loop
GoTo Fin
Erreur:
DoCmd.RunSQL "INSERT INTO [Erreur import xls] ( [Nom Fichier],
[Code erreur] ) SELECT '" & Dossier & rep & "' AS Fichier, " &
Err.Number & " AS Erreur" ', '" & Err.Description & "' AS MesErr"
Resume Suite
Fin:
End Sub


Tu adaptes. J'ai utilisé cette fonction pour créer autant de table que
de tableau que contenait une feuille de calcul.
voila

Publicité
Poster une réponse
Anonyme