Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Exécuter automatiquement une macro sur un fichier CSV

tb_horus

XLDnaute Nouveau
Bonjour à tous,

Je souhaiterais de l'aide sur l'utilisation d'une macro à partir d'un fichier CSV ouvert sous Excel.
Voici mon contexte:
Mon application (développé en Oracle Forms) génère une fichier .csv et l'ouvre.
J'ai une jolie macro implantée dans mon environnement qui, lorsque mon .csv est ouvert, permet de générer un graphique à partir des données qu'il contient. (L'exécution de la macro se fait par la combinaison "Alt + T").

Ce que l'on me demande est:
Que cette macro s'exécute automatiquement après l'ouverture du .csv et enregistre le fichier au format .xls

J'ai recherché l'information et suis tombé sur beaucoup d'informations intéressantes sur l'utilisation des macros mais n'ayant pas du tout de connaissances sur le sujet je rame un peu à tout tester...

Ce que j'ai essayé de faire dans un premier temps est de capturer (et de manière simple par appel à MsgBox) l'instant où mon .csv est actif dans Excel (Utilisation de Workbook_SheetActivate) mais sans succès. Pareil pour Workbook_SheetChange et Workbook_WindowActivate.

Le seul événement que j'arrive à capturer est le Workbook_Open (L'ouverture d'Excel) mais à ce niveau mon fichier #et donc mes données# ne sont pas encore disponible.

Si quelqu'un (et je suis sur qu'il y en a) peut m'aider, je lui échange contre des compétences ORACLE (Forms et PL/SQL ;-)

Merci pour l'attention portée à mon message.

Thierry
 

tb_horus

XLDnaute Nouveau
Re : Exécuter automatiquement une macro sur un fichier CSV

Bonjour Pierre et merci pour cette réponse rapide,

Je ne suis pas trop sur de comprendre à quel moment l'exécution de ce code me permet d'obtenir le résultat que l'on me demande ^^.

Pour mon cas, le contenu est déjà chargé dans Excel via l'ouverture du .cvs. Ce que je souhaite est d'automatiser l'exécution de ma macro (*.xla) afin qu'elle insère le graphique à partir des données dans le fichier ouvert (Simulation de mon "Alt + T") et ensuite sauvegarder le fichier au format .xls.

Ma macro contient une worksheet Feuil1 nommée avec le nom de l'onglet de mon fichier .csv quand il est ouvert dans Excel et d'un module "Module1" qui contient le code de création du graphique à partir des données de la worksheet.
(Image en pièce jointe)

Ce que tu me suggère est-il d'adapter ton code au code de la macro et mettre celui-ci dans le Workbook_Open afin que les données se charge et mon graphique s'insère? Il ne me restera plus qu'à automatiser l'enregistrement en .xls.

En te remerciant encore pour ton aide je vais tester cela.

Cordialement.

Thierry
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…