Forum Clubic

Importation de données d'Excel vers Access

Salut les geeks !:smiley:

J’ai des fichiers Excel, qui contiennent chacun plusieurs onglets, et une base de données Access.
Comment faut-il faire pour que le code Visual Basic ouvre chaque fichier, puis pour chaque onglet, qu’il prélève son nom ainsi que les lignes de texte écrites dans cet onglet svp ?
Toutes ces informations relevées doivent ensuites être insérées dans une table de ma base de données.

J’en ai besoin pour mon stage !

Merci d’avance les gens !

C’est prévu dans access
C’est la commande TransferSpreadSheet
Tu ouvres un module accès, et tu regardes dans l’aide intégrée.
Précise ensuite sur quels points tu bloques s’il te reste des difficultés
Edité le 20/06/2007 à 14:40

Merci pour ton aide gcc, mais j’ai réussi à faire çà d’autre manière. Maintenant j’ai un autre problème :
pour chaque fichier Excel que mon programme trouve, les données contenues dans les onglets sont bien importées dans Access comme j’attendais. Mais à chaque fois qu’il a fini, un message d’avertissement d’Excel s’affiche et celui-ci me demande si je veux enregistrer les modifications apportées au fichier qu’il vient de lire.

Etant donné que j’en ai au moins une vingtaine, çà devient très vite lourd… Alors comment pourrais-je faire pour désactiver ceci stp ?

S’il demande de sauver, on peut donc supposer qu’il y a eu modif, donc que le-dit fichier excel est ouvert ?
Peux-tu dire quelle commande tu utilises pour fermer ce fichier ?

Voila d’abord pour l’ouverture :

Dim Dbs
Set Dbs = CurrentDb
Set applXLS = CreateObject(“Excel.application”)
Set leClasseur = applXLS.Workbooks.Open(ps_nom_fichier)

Et voici la fermeture :
applXLS.Workbooks.Close

essaie de mettre Application.displayalerts = false juste avant
Par contre, tant que ton excel reste ouvert, ca risque de rester valable jusqu’à la fermeture du dernier fichier, même ceux que tu gardes pour les fermer en manuel.

Edit :
ou applXLS.Application.displayalerts = false
Edité le 26/06/2007 à 17:31

la deuxième solution, applXLS.Application.displayalerts = false, était la bonne.

Merci bcp pour ton aide, je viens de finir mon stage à EDF en beauté lol !

@++

:jap: