[Access97] macro d'importation données Excel
Christophe
-
mohammed -
mohammed -
Salut tout le monde!!!
J'ai un pblm avec Access97. En fait j'essai de créer un macro qui va importer des données à partir d'une table Excel. Mais je n'arrive pas indiquer le chemin vers une feuille donnée (quand j'essai de recuperer données de 2° feuille, j'ai une erreur: il lit que les données de la 1° feuille). Je galère deja 2 jours...
Merci d'avance pour votre réponse!
J'ai un pblm avec Access97. En fait j'essai de créer un macro qui va importer des données à partir d'une table Excel. Mais je n'arrive pas indiquer le chemin vers une feuille donnée (quand j'essai de recuperer données de 2° feuille, j'ai une erreur: il lit que les données de la 1° feuille). Je galère deja 2 jours...
Merci d'avance pour votre réponse!
A voir également:
- [Access97] macro d'importation données Excel
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Trier des données excel - Guide
- Word et excel gratuit - Guide
- Si ou excel - Guide
1 réponse
Salut Christophe
essaye dans le macros d'utliser arrêt maxro apprès la 1ère importation ensuite importer la second feuil.
voici un code vba
Déclaration:
Dim appexcel as Excel.Application
Dim wbexcel as Excel.Workbook
Ne pas oublier de cocher dans le menu Outil/Références, la bibliothèque Microsoft Excel X Object Library (avec x = 8 pour Excel 97, x = 9 pour Excel 2000, x = 10 pour excel XP, x = 11 pour excel 2003).
Bonne chance.
Merci
Appel du fichier Excel :
Set appexcel = CreateObject("Excel.Application")
appexcel.Visible = True
Set wbexcel = appexcel.Workbooks.Open("Chemin du fichier Excel")
Appel de la feuille correspondante :
appexcel.Sheets("Feuil1").Select
Remplissage dans Excel (Exemple à partir d'une requête), sur des cellules bien précises.
appexcel.cells(5, 2) = rst![Nomduchamps]
appexcel.cells(5, 4) = rst![Nomduchamps]
appexcel.cells(5, 7) = rst![Nomduchamps]
Attention la cellule (5,2) correspond à la cellule B5 d'excel. la fonction rst correspond à un enregistrement RecordSet.
essaye dans le macros d'utliser arrêt maxro apprès la 1ère importation ensuite importer la second feuil.
voici un code vba
Déclaration:
Dim appexcel as Excel.Application
Dim wbexcel as Excel.Workbook
Ne pas oublier de cocher dans le menu Outil/Références, la bibliothèque Microsoft Excel X Object Library (avec x = 8 pour Excel 97, x = 9 pour Excel 2000, x = 10 pour excel XP, x = 11 pour excel 2003).
Bonne chance.
Merci
Appel du fichier Excel :
Set appexcel = CreateObject("Excel.Application")
appexcel.Visible = True
Set wbexcel = appexcel.Workbooks.Open("Chemin du fichier Excel")
Appel de la feuille correspondante :
appexcel.Sheets("Feuil1").Select
Remplissage dans Excel (Exemple à partir d'une requête), sur des cellules bien précises.
appexcel.cells(5, 2) = rst![Nomduchamps]
appexcel.cells(5, 4) = rst![Nomduchamps]
appexcel.cells(5, 7) = rst![Nomduchamps]
Attention la cellule (5,2) correspond à la cellule B5 d'excel. la fonction rst correspond à un enregistrement RecordSet.
Je vais voir ça lundi, car c'est au boulot. En tout cas merci beaucoup pour ta réponse. Je te tiendrai au courant si ça marche (et même si ça ne marche pas...) :o)
bon week end même si en retard.
je suis un débutant en access vous trouverez beaucoup d'information sur le site developpez.com -> acces->faqaccess
http://access.developpez.com/faq/
bonne chance.
Bon retour au boulôt.
Merci.
En fait j'ai trouvé! (ton exemple faisait le procedure inverse - Acceszs-> Excel)
Il fallait seulement dans l'étendue de la plage à importer préciser l'onglet.
Ex.: pas A1:D5 - mais Feuille!A1:D5
Voila! Allez ciao et bonne chance!
bien joué peut être que j'ai mal compris votre question.
onne chance.
Merci.