Stephblit
Messages postés8Date d'inscriptionjeudi 6 mars 2008StatutMembreDernière intervention 9 juin 2008
-
27 mars 2008 à 19:59
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 2012
-
28 mars 2008 à 08:06
Bsr,
Voila, j'ai une cinquantaine de classeurs ouverts qui ne sont pas enregistrés
Je souhaite créer une macro
qui me permette d'enregistrer automatiquement ces 50 classeurs dans le dossier (C:\Users\Alex\Desktop\Nouveau dossier) en leur donnant à le nom du 1er onglet (à vrai dire chaque classeur ne comporte qu'un seul onglet !)
Tu mets ça dans une boucle qui lit tous les classeurs ouverts en utilisant la collection Windows
For Each Classeur in Windows
Classeur.Activate
Classeur.SaveAs "C:\Users\Alex\Desktop\Nouveau dossier" & activesheet.name & ".xls"
Classeur.close ' si tu veux les fermer au fur et à mesure
Next
Je n'ai pas testé, mais ça devrait fonctionner...
MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 28 mars 2008 à 08:06
Salut à tous.
Moi je passerais par la collection WorkBooks de l'objet Application.
Soit:
Dim WBook As Workbook
For Each WBook In Application.Workbooks
'SI le fichier existe déjà il te demandera si tu veux le remplacer
Call WBook.SaveAs("C:\Users\Alex\Desktop\Nouveau dossier\" & WBook.Sheets(1).Name & ".xls")
Call WBook.Close
Next
, ----
[code.aspx?ID=41455 By Renfield]