Salva singolo foglio o più fogli di lavoro

Stato
Chiusa ad ulteriori risposte.

ges

Excel/VBA Expert
Amministratore
21 Giugno 2015
29.773
2.465
Como
2011MAC 365WIN
1.045
Per salvare un singolo foglio di lavoro come cartella.
Visual Basic:
Sub SalvaFoglio()
    Dim percorso As String
    Dim nomefile As String
    percorso = ThisWorkbook.Path & "\"
    nomefile = "pippo.xlsx"
    ActiveSheet.Copy
    ActiveWorkbook.SaveAs Filename:=percorso & nomefile
    ActiveWindow.Close
End Sub
Per salvare più fogli in una cartella di lavoro bisogna creare un Array
Visual Basic:
Sub SalvoPiuFogli()
    Dim percorso As String
    Dim nomefile As String
    Dim myArray As Variant
    percorso = ThisWorkbook.Path & "\"
    nomefile = "pippo.xlsx"
    myArray = Array("Foglio1", "Foglio3", "Foglio4")
    Sheets(myArray).Copy
    ActiveWorkbook.SaveAs Filename:=percorso & nomefile
    ActiveWindow.Close
End Sub
Per salvare un singolo foglio di lavoro come cartella con estensione .xlsm.
Visual Basic:
Sub Salva_Foglio_xlsm()
    Dim NomeFile As String
    Dim percorso As String
    percorso = ThisWorkbook.Path & "\"
    NomeFile = "pippo"
    ActiveSheet.Copy
    ActiveWorkbook.SaveAs percorso & NomeFile, FileFormat:=52'
    ActiveWorkbook.Close True
End Sub
Nr. FileFormat per le diverse estensioni
Visual Basic:
.xlsb -> FileFormat = 50
.xlsx -> FileFormat = 51
.xlsm -> FileFormat = 52
.xls ->  FileFormat = 56
.csv ->  FileFormat = 6
.txt ->  FileFormat = -4158
.prn ->  FileFormat = 36
Il percorso e il nome del file sono indicati a titolo di esempio possono essere cambiati.
 
Stato
Chiusa ad ulteriori risposte.

Sostieni ForumExcel

Aiutaci a sostenere le spese e a mantenere online la community attraverso una libera donazione!