Bonjour la famille!
J'ai un fichier excel source avec un certain nombre de feuilles.
Dans mon interface, l'utilisateur va sélectionner la feuille qui va servir de référence pour lancer un traitement (la feuille ayant pour nom TOTO), dans mon code, je copie le fichier source en fichier cible, jusque là, c'est ok.
Ce que j'aimerais faire, c'est que je voudrais supprimer toutes les feuilles qui ne vont pas servir de feuille source (donc toutes les feuilles n'ayant pas pour nom TOTO).
Dans le dernier test que j'ai fait, je suis passé d'un classeur de 4 feuilles à 2 feuilles, la feuille source et la feuille qui a été sélectionnée par l'utilisateur, je n'ai pas réussi à "forcer" la sélection de la feuille source, bien que j'ai essayé avec les objets automations.
Mon code :
Merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 l_MonExcel est un xlsDocument=xlsOuvre(l_nouveauFichier) //l_nouveauFichier = nom du nouveau classeur l_nbFeuilles est un entier=xlsNbFeuille(l_MonExcel) SI l_nbFeuilles>1 ALORS xl est un objet OLE "Excel.Application" xl>>visible=OLEFaux xl>>workbooks>>open(l_nouveauFichier) xl>>Sheets("TOTO")>>Select() xl>>Activeworkbook>>save xl>>workbooks>>close xl>>quit //je supprime les feuilles qui ne m'intéressent pas POUR loop_i=1 _A_ l_nbFeuilles SI xlsFeuilleEnCours(l_MonExcel,loop_i) ALORS SI l_MonExcel..NomFeuille<>"TOTO" ALORS xlsSupprimeFeuille(l_MonExcel,loop_i) FIN FIN FIN xlsSauve(l_MonExcel) FIN xlsFerme(l_MonExcel)
Partager