enregistrer feuille

jean123

XLDnaute Occasionnel
bonjour,

je souhaiterai enregistrer les deux dernières feuilles d'un classeur (au même nom) dans un nouveau classeur nommé a la date du mois en cours

j'ai essayé avec Sheets.Count mais je ne sais pas faire pour les deux dernières feuilles
 

jean123

XLDnaute Occasionnel
j'ai tester ça mais en vain
Code:
Sub classeur()

Dim wk As Workbook
Dim ws As Worksheet

    Set wk = Workbooks.Add(xlWBATWorksheet)
    Set ws = ThisWorkbook.Worksheets(Sheets.Count - 1)
    ws.Copy After:=wk.Sheets(Sheets.Count)
   
Dim nom, chemin As String
    nom = MonthName(Month(Date) - 5) & "_" & MonthName(Month(Date) - 1) & "_" & "test"
    ActiveWorkbook.Save
    ActiveWorkbook.Close
End Sub
mais sur la ligne
Code:
   Set ws = ThisWorkbook.Worksheets(Sheets.Count - 1)
j'ai une erreur
 

Staple1600

XLDnaute Barbatruc
Re

En attendant ton retour, cette macro semble faire ce que tu dis vouloir faire
enregistrer les deux dernières feuilles d'un classeur dans un nouveau classeur en le renommant avec le nom du mois en cours.
VB:
Sub a()
Dim strPath As String
Dim t As Variant, WBK As Workbook
strPath = ThisWorkbook.Path & "\"
t = Array(Sheets(Sheets.Count).Name, Sheets(Sheets.Count).Previous.Name)
Sheets(t).Copy
Set WBK = ActiveWorkbook
WBK.SaveAs strPath & Format(Date, "mmmm-yyyy") & ".xlsx", 51
'finalement je me corrige moi-même ;-)
WBK.Close True
End Sub
test ok sur mon PC.
 
Dernière édition:

Discussions similaires