Daniel Desch
XLDnaute Nouveau
Bonjour,
J'ai besoin de traiter des fichiers Excel générés par des applications utilisateurs qui contiennent chacun X feuilles
Un des problèmes c'est que ces fichiers mettent un temps fou à se charger car les feuilles de ces fichiers contiennent dans chaque cellule des formules de calcul du type :
=SIERREUR(@__xludf.DUMMYFUNCTION("""COMPUTED_VALUE""");"")
Même dans les cases inutilisées ou sur les commentaires il y a des formules comme ça. Je ne vois pas trop à quoi ça sert mais tout ça doit être généré par des applications auxquelles je n'ai pas accès. Du coup, même les fichiers avec peu de données deviennent énormes à manipuler.
Toujours est-il que je dois travailler sur les données de ces fichiers en recopiant le contenu des feuilles qui m'intéressent sans ouvrir ces fichiers.
Je suis dans mon fichier Excel de travail (C:\Users\Daniel\Documents\Pb6778_xx\Travail.xls) qui contient 3 feuilles : Param, Copie, Résultat
J'exécute une macro à partir de ce fichier. Elle doit faire les choses suivantes
1°) Récupérer le nom du fichier à traiter, nom qui se situe en position C11 de la feuille Param de mon fichier de travail (Par exemple "C:\Users\Daniel\Documents\Pb6778_xx\Novem_Etr.xls") et récupérer le nom de la feuille à traiter, nom qui se situe en position C13 de la feuille Param (Par exemple "Nantes")
2°) Recopier ensuite le contenu (mais uniquement les valeurs, pas les formules) de la feuille ainsi paramétrée (Dans mon exemple ce sera donc la feuille de donnée "Nantes" du fichier C:\Users\Daniel\Documents\Pb6778_xx\Novem_Etr.xls) dans la feuille Copie de mon fichier de travail
3°) Ensuite la macro poursuit son cours et traite le contenu de la feuille "Copie" de mon fichier de travail pour générer la feuille Résultat de mon fichier de travail avant de sauvegarder globalement ce dernier, cette sauvegarde contenant donc à la fois l'adresse du fichier traité, la copie des données initiales et les résultats obtenus
Je cherche la façon la plus facile, la plus rapide et la plus fiable de réaliser le point 2°) sachant que cela doit fonctionner également dans la version Excel 2010 et versions ultérieures
Vous remerciant par avance pour vos retours et votre aide
Cordialement
J'ai besoin de traiter des fichiers Excel générés par des applications utilisateurs qui contiennent chacun X feuilles
Un des problèmes c'est que ces fichiers mettent un temps fou à se charger car les feuilles de ces fichiers contiennent dans chaque cellule des formules de calcul du type :
=SIERREUR(@__xludf.DUMMYFUNCTION("""COMPUTED_VALUE""");"")
Même dans les cases inutilisées ou sur les commentaires il y a des formules comme ça. Je ne vois pas trop à quoi ça sert mais tout ça doit être généré par des applications auxquelles je n'ai pas accès. Du coup, même les fichiers avec peu de données deviennent énormes à manipuler.
Toujours est-il que je dois travailler sur les données de ces fichiers en recopiant le contenu des feuilles qui m'intéressent sans ouvrir ces fichiers.
Je suis dans mon fichier Excel de travail (C:\Users\Daniel\Documents\Pb6778_xx\Travail.xls) qui contient 3 feuilles : Param, Copie, Résultat
J'exécute une macro à partir de ce fichier. Elle doit faire les choses suivantes
1°) Récupérer le nom du fichier à traiter, nom qui se situe en position C11 de la feuille Param de mon fichier de travail (Par exemple "C:\Users\Daniel\Documents\Pb6778_xx\Novem_Etr.xls") et récupérer le nom de la feuille à traiter, nom qui se situe en position C13 de la feuille Param (Par exemple "Nantes")
2°) Recopier ensuite le contenu (mais uniquement les valeurs, pas les formules) de la feuille ainsi paramétrée (Dans mon exemple ce sera donc la feuille de donnée "Nantes" du fichier C:\Users\Daniel\Documents\Pb6778_xx\Novem_Etr.xls) dans la feuille Copie de mon fichier de travail
3°) Ensuite la macro poursuit son cours et traite le contenu de la feuille "Copie" de mon fichier de travail pour générer la feuille Résultat de mon fichier de travail avant de sauvegarder globalement ce dernier, cette sauvegarde contenant donc à la fois l'adresse du fichier traité, la copie des données initiales et les résultats obtenus
Je cherche la façon la plus facile, la plus rapide et la plus fiable de réaliser le point 2°) sachant que cela doit fonctionner également dans la version Excel 2010 et versions ultérieures
Vous remerciant par avance pour vos retours et votre aide
Cordialement