5 modi per salvare una cartella di lavoro in excel
Per salvare una cartella di lavoro Excel utilizzando VBA, è necessario utilizzare il metodo SAVE per scrivere una macro. E in questa macro devi specificare la cartella di lavoro che vuoi salvare e quindi utilizzare il metodo SAVE. Quando esegui questo codice, funziona come la scorciatoia da tastiera (Ctrl + S).
- Specifica il cappello della cartella di lavoro che desideri salvare.
- Digitare un punto per ottenere un elenco di tutte le proprietà e i metodi.
- Seleziona il metodo “Salva” da questi o tocca “Salva”
- Alla fine, esegui il codice per salvare la cartella di lavoro.
In questo tutorial, esamineremo diversi modi per salvare una cartella di lavoro. Quindi assicurati di aprire l’editor VBA dalla scheda sviluppatore per utilizzare il codice che hai in questo tutorial.
Salva la cartella di lavoro attiva
Se in questo caso desideri salvare la cartella di lavoro attiva, puoi utilizzare un codice come il seguente, invece di specificare la cartella di lavoro per nome.
ActiveWorkbook.Save
Quando utilizzi ActiveWorkbook come cartella di lavoro, VBA fa sempre riferimento alla cartella di lavoro attiva indipendentemente dal file in cui scrivi il codice.
Salva la cartella di lavoro in cui scrivi il codice
Se vuoi salvare il file in cui scrivi il codice, dovresti usare “ThisWorkbook” invece del nome della cartella di lavoro.
ThisWorkbook.Save
Salva tutte le cartelle di lavoro aperte
Qui possiamo utilizzare un ciclo per esaminare tutte le cartelle di lavoro aperte e salvarle una per una. Guarda il codice qui sotto.
Sub vba_save_workbook() 'variable to use as a workbook Dim wb As Workbook 'For each to loop through each open workbook and save it For Each wb In Workbooks wb.Save Next wb End Sub
Il codice precedente utilizza il ciclo FOR EACH in ciascuna cartella di lavoro, utilizza il metodo SAVE per ciascun file uno per uno.
Nota: se provi a salvare una cartella di lavoro con il metodo SALVA che non è già salvata, Excel visualizza una finestra di dialogo per chiedere l’autorizzazione per salvare questo file, quindi devi scegliere se desideri salvare questo file nella posizione predefinita nel formato predefinito.
Ora il punto è questo: poiché stai utilizzando una macro per salvare la cartella di lavoro, questo file deve essere salvato in un formato compatibile con le macro e il modo migliore per gestire questa situazione è utilizzare il metodo SAVE AS (vedremo nella sezione successiva di questo tutorial).
Salva come file Excel
Per SALVARE un file non ancora salvato, utilizzando VBA, è necessario utilizzare il metodo SAVE AS. In questo metodo puoi impostare il nome del file e il percorso in cui desideri salvare il file e, a parte questo, ci sono altri dieci argomenti che puoi impostare.
expression.SaveAs (FileName, FileFormat, Password, WriteResPassword, ReadOnlyRecommended, CreateBackup, AccessMode, ConflictResolution, AddToMru, TextCodepage, TextVisualLayout, Local)
Nel codice seguente non sono presenti argomenti con il metodo “SALVA COME”.
Quando esegui questo codice, ti vengono chieste alcune cose, ad esempio quale formato vuoi utilizzare per salvare il file o vuoi sovrascrivere il file esistente già salvato con lo stesso nome. Quindi è meglio definire l’uso di alcuni argomenti.
Salva come file nella posizione corrente
Per impostazione predefinita, VBA utilizza la posizione corrente per salvare il file. Quando scrivi il codice con il metodo SAVE AS e specifichi semplicemente il nome, questo file va direttamente nella cartella corrente. Puoi vedere nel codice seguente dove hai il file che salva la cartella di lavoro attiva.
Sub save_as_file() ActiveWorkbook.SaveAs Filename:="myNewWorkbook" End Sub
Salva come file in una posizione specifica
L’argomento del nome file consente inoltre di utilizzare il percorso nel caso in cui si desideri utilizzare una posizione diversa per salvare il file.
Sub save_as_file() ActiveWorkbook.SaveAs _ Filename:="C:UsersDellDesktopmyNewBook" End Sub
Nel codice sopra hai il percorso nell’argomento FileName e VBA utilizza quel percorso per il file.
Nota: puoi anche utilizzare questo metodo per verificare se una cartella di lavoro esiste o meno in una cartella prima di utilizzare il metodo SAVE AS per salvarla in una posizione particolare e puoi saperne di più sul metodo SAVE AS da qui.
Tutorial correlati
- VBA ThisWorkbook (file Excel corrente)
- Cartella di lavoro VBA: una guida per lavorare con le cartelle di lavoro in VBA
- VBA Controlla se esiste una cartella di lavoro in una cartella (file Excel)
- VBA Controlla se una cartella di lavoro è aperta (file Excel)
- Salvare una cartella di lavoro Excel con attivazione macro (tipo di file .xlsm)