[EXCEL] VBA : supprimer feuilles ???
mortelrdv
-
wilfried_42 Messages postés 912 Statut Contributeur -
wilfried_42 Messages postés 912 Statut Contributeur -
Bonjour,
Je cherche à suppimer les feuilles (sauf la premiere) d'un fichier xls ouvert à partir d'un autre instance excel.
j'ai fait le code suivant mais ça ne marche pas, les feuilles ne sont pas supprimées et je suis bloqué dans la boucle.
Merci de votre aide
Je cherche à suppimer les feuilles (sauf la premiere) d'un fichier xls ouvert à partir d'un autre instance excel.
j'ai fait le code suivant mais ça ne marche pas, les feuilles ne sont pas supprimées et je suis bloqué dans la boucle.
Function supp()
Dim FileApp As New Excel.Application 'Application Excel
Dim FileWorkbook As Excel.Workbook 'Classeur Excel
'Ouverture d'un fichier Excel de reference, FileWorkbook point sur le classeur
Set FileWorkbook = FileApp.Workbooks.Open("E:\toto.xls", , False)
Do While FileWorkbook.Worksheets.Count > 1
FileWorkbook.Worksheets(FileWorkbook.Worksheets.Count).Delete
Loop
Set FileWorkbook = Nothing
'fermer le fichier ouvert
FileApp.Workbooks(strFilename).Close True
End Function
Merci de votre aide
A voir également:
- [EXCEL] VBA : supprimer feuilles ???
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Si ou excel - Guide
- Déplacer colonne excel - Guide
- Excel compter cellule couleur sans vba - Guide
1 réponse
bonjour
ceci :
si tu as des message de confimation de suppression de feuille, tu peux encadrer la boucle For Next avec ces 2 lignes
je ne sais pas à partir de quoi tu lance cette instance, mais en Excel VBA, le code non testé doit quand meme fonctionner
ceci :
Do While FileWorkbook.Worksheets.Count > 1
FileWorkbook.Worksheets(FileWorkbook.Worksheets.Count).Delete
Loop
devient :
Dim i as integer
if fileworkbook.worksheets.count>1 then
for i = fileworkbook.worksheets.count - 1 to 1 step -1
fileworkbook.worksheets(i).delete
next i
end if
si tu as des message de confimation de suppression de feuille, tu peux encadrer la boucle For Next avec ces 2 lignes
FileApp.DisplayAlerts=False For....... Next FileApp.DisplayAlext=True
je ne sais pas à partir de quoi tu lance cette instance, mais en Excel VBA, le code non testé doit quand meme fonctionner