Bonjour =E0 tous !
Je veux automatiser la copie de plusieurs maccros access=20
dans excel. Pour le moment j'ai =E9crit le d=E9but d'un code=20
qui me permet de cr=E9=E9 un fichier excel avec les feuilles=20
de calcul qui m'int=E9ressent. (Cela fonctionne).=20
Function EXPORTER_VERS_EXCEL()
Dim XL_App As Object
Set XL_App =3D CreateObject("Excel.Application")
With XL_App
.Visible =3D True
.Workbooks.Add
.ActiveWorkbook.Sheets.Add
.ActiveSheet.Name =3D "R=E9sultats Estimatifs"
.ActiveWorkbook.Sheets.Add
.ActiveSheet.Name =3D "PARETO PDR"
.ActiveWorkbook.Sheets.Add
.ActiveSheet.Name =3D "PARETO MP"
.ActiveWorkbook.Sheets.Add
.ActiveSheet.Name =3D "PARETO CO"
.DisplayAlerts =3D False
.Worksheets("feuil1").Delete
.Worksheets("feuil2").Delete
.Worksheets("feuil3").Delete
.ActiveWorkbook.SaveAs ("X:\Etude=20
d'optimisation.XLS")
.DisplayAlerts =3D True
.Quit
End With
Set XL_App =3D Nothing
End Function
Maintenant le probl=E8me c'est que je veux copier la maccro=20
PARETO CO dans la feuille PARETO CO idem pour PARETO MP=20
etc...
"kiwix" [...] Maintenant le problème c'est que je veux copier la maccro PARETO CO dans la feuille PARETO CO idem pour PARETO MP etc...
Comment faire ! J'ai Access 97 et excel 97
Les macros Access n'ont pas grand chose à voir avec les macros Excel...
PS : Pourquoi envoie tu 2 fois la même question sous 2 titres différents ????
-- A+ Pierre (3stone) Access MVP ----------------------------- http://users.skynet.be/mpfa -----------------------------
PS : Pourquoi envoie tu 2 fois la même question sous 2 titres différents ????
Je croyais que la 1er question n'étais pas passée (excusez moi) j'ai fais une erreur c'est pas les maccros que je veux copier mais les requêtes (bien sur)!
Merci pour vos réponses
PS : Pourquoi envoie tu 2 fois la même question
sous 2 titres différents ????
Je croyais que la 1er question n'étais pas passée (excusez
moi)
j'ai fais une erreur c'est pas les maccros que je veux
copier mais les requêtes (bien sur)!
PS : Pourquoi envoie tu 2 fois la même question sous 2 titres différents ????
Je croyais que la 1er question n'étais pas passée (excusez moi) j'ai fais une erreur c'est pas les maccros que je veux copier mais les requêtes (bien sur)!
Merci pour vos réponses
Maxence HUBICHE
Ah ! tiens ! Tu la remets ici ta question ? Bon alors, si j'ai bien compris, tu veux mettre le contenu d'une macro dans une feuille de calcul (ne pas chercher à comprendre, surtout, ne pas chercher à comprendre ...)
A priori, tu vas avoir du mal :) Mais (car il y a un mais) tu as une possiblité de t'en sortir : Il y a une méthode cachée que tu peux utiliser : Application.SaveAsText acMacro, "NomMacro", "c:test.temp"
Si tu l'utilises, tu vas récupérer un fichier texte "c:test.tmp" qui contiendra toutes les actions contenues dans ta 'macro'. il te faudra ouvrir ce fichier texte, et le lire séquentiellement pour en faire ce que tu veux. C'est du boulot. Je l'ai fait une fois pour un audit de base de données. C'est long, mais intéressant.
Je te laisse en découvrir les joies :)
Ciao :) ======================================== Maxence HUBICHE Formateur & développeur indépendant Rédacteur Access sur http://www.developpez.com http://access.developpez.com/access/faq <<= Ici, la FAQ Access de developpez.com
.. "kiwix" a écrit dans le message de news: 626f01c4012d$b6ddc5c0$ Bonjour à tous ! Je veux automatiser la copie de plusieurs maccros access dans excel. Pour le moment j'ai écrit le début d'un code qui me permet de créé un fichier excel avec les feuilles de calcul qui m'intéressent. (Cela fonctionne).
Function EXPORTER_VERS_EXCEL() Dim XL_App As Object Set XL_App = CreateObject("Excel.Application") With XL_App .Visible = True .Workbooks.Add .ActiveWorkbook.Sheets.Add .ActiveSheet.Name = "Résultats Estimatifs" .ActiveWorkbook.Sheets.Add .ActiveSheet.Name = "PARETO PDR" .ActiveWorkbook.Sheets.Add .ActiveSheet.Name = "PARETO MP" .ActiveWorkbook.Sheets.Add .ActiveSheet.Name = "PARETO CO" .DisplayAlerts = False .Worksheets("feuil1").Delete .Worksheets("feuil2").Delete .Worksheets("feuil3").Delete .ActiveWorkbook.SaveAs ("X:Etude d'optimisation.XLS") .DisplayAlerts = True .Quit End With Set XL_App = Nothing End Function
Maintenant le problème c'est que je veux copier la maccro PARETO CO dans la feuille PARETO CO idem pour PARETO MP etc...
Comment faire ! J'ai Access 97 et excel 97
Merci pour vos réponse
Ah ! tiens ! Tu la remets ici ta question ?
Bon alors, si j'ai bien compris, tu veux mettre le contenu d'une macro dans
une feuille de calcul (ne pas chercher à comprendre, surtout, ne pas
chercher à comprendre ...)
A priori, tu vas avoir du mal :)
Mais (car il y a un mais) tu as une possiblité de t'en sortir :
Il y a une méthode cachée que tu peux utiliser :
Application.SaveAsText acMacro, "NomMacro", "c:test.temp"
Si tu l'utilises, tu vas récupérer un fichier texte "c:test.tmp" qui
contiendra toutes les actions contenues dans ta 'macro'. il te faudra ouvrir
ce fichier texte, et le lire séquentiellement pour en faire ce que tu veux.
C'est du boulot.
Je l'ai fait une fois pour un audit de base de données.
C'est long, mais intéressant.
Je te laisse en découvrir les joies :)
Ciao :)
======================================== Maxence HUBICHE
Formateur & développeur indépendant
Rédacteur Access sur http://www.developpez.com
http://access.developpez.com/access/faq <<= Ici, la FAQ Access de
developpez.com
..
"kiwix" <anonymous@discussions.microsoft.com> a écrit dans le message de
news: 626f01c4012d$b6ddc5c0$a001280a@phx.gbl...
Bonjour à tous !
Je veux automatiser la copie de plusieurs maccros access
dans excel. Pour le moment j'ai écrit le début d'un code
qui me permet de créé un fichier excel avec les feuilles
de calcul qui m'intéressent. (Cela fonctionne).
Function EXPORTER_VERS_EXCEL()
Dim XL_App As Object
Set XL_App = CreateObject("Excel.Application")
With XL_App
.Visible = True
.Workbooks.Add
.ActiveWorkbook.Sheets.Add
.ActiveSheet.Name = "Résultats Estimatifs"
.ActiveWorkbook.Sheets.Add
.ActiveSheet.Name = "PARETO PDR"
.ActiveWorkbook.Sheets.Add
.ActiveSheet.Name = "PARETO MP"
.ActiveWorkbook.Sheets.Add
.ActiveSheet.Name = "PARETO CO"
.DisplayAlerts = False
.Worksheets("feuil1").Delete
.Worksheets("feuil2").Delete
.Worksheets("feuil3").Delete
.ActiveWorkbook.SaveAs ("X:Etude
d'optimisation.XLS")
.DisplayAlerts = True
.Quit
End With
Set XL_App = Nothing
End Function
Maintenant le problème c'est que je veux copier la maccro
PARETO CO dans la feuille PARETO CO idem pour PARETO MP
etc...
Ah ! tiens ! Tu la remets ici ta question ? Bon alors, si j'ai bien compris, tu veux mettre le contenu d'une macro dans une feuille de calcul (ne pas chercher à comprendre, surtout, ne pas chercher à comprendre ...)
A priori, tu vas avoir du mal :) Mais (car il y a un mais) tu as une possiblité de t'en sortir : Il y a une méthode cachée que tu peux utiliser : Application.SaveAsText acMacro, "NomMacro", "c:test.temp"
Si tu l'utilises, tu vas récupérer un fichier texte "c:test.tmp" qui contiendra toutes les actions contenues dans ta 'macro'. il te faudra ouvrir ce fichier texte, et le lire séquentiellement pour en faire ce que tu veux. C'est du boulot. Je l'ai fait une fois pour un audit de base de données. C'est long, mais intéressant.
Je te laisse en découvrir les joies :)
Ciao :) ======================================== Maxence HUBICHE Formateur & développeur indépendant Rédacteur Access sur http://www.developpez.com http://access.developpez.com/access/faq <<= Ici, la FAQ Access de developpez.com
.. "kiwix" a écrit dans le message de news: 626f01c4012d$b6ddc5c0$ Bonjour à tous ! Je veux automatiser la copie de plusieurs maccros access dans excel. Pour le moment j'ai écrit le début d'un code qui me permet de créé un fichier excel avec les feuilles de calcul qui m'intéressent. (Cela fonctionne).
Function EXPORTER_VERS_EXCEL() Dim XL_App As Object Set XL_App = CreateObject("Excel.Application") With XL_App .Visible = True .Workbooks.Add .ActiveWorkbook.Sheets.Add .ActiveSheet.Name = "Résultats Estimatifs" .ActiveWorkbook.Sheets.Add .ActiveSheet.Name = "PARETO PDR" .ActiveWorkbook.Sheets.Add .ActiveSheet.Name = "PARETO MP" .ActiveWorkbook.Sheets.Add .ActiveSheet.Name = "PARETO CO" .DisplayAlerts = False .Worksheets("feuil1").Delete .Worksheets("feuil2").Delete .Worksheets("feuil3").Delete .ActiveWorkbook.SaveAs ("X:Etude d'optimisation.XLS") .DisplayAlerts = True .Quit End With Set XL_App = Nothing End Function
Maintenant le problème c'est que je veux copier la maccro PARETO CO dans la feuille PARETO CO idem pour PARETO MP etc...