Si dovrebbe eseguire il backup dei dati a intervalli regolari poiché qualsiasi modifica errata da parte dell'altro utente o la cancellazione accidentale del file excel può rovinare molto tempo e informazioni.
In questo articolo, tratteremo come eseguire il backup del file Excel utilizzando VBA.
In questo articolo, tratteremo due diversi modi di eseguire il backup utilizzando il codice VBA. Abbiamo scritto due macro per eseguire il backup del file Excel.
La macro "SaveWorkbookBackup" creerà un backup del file Excel con estensione ".bak" all'interno della stessa cartella in cui è salvata la cartella di lavoro attiva.
La macro "SaveWorkbookBackupToFloppy" creerà una copia della cartella di lavoro attiva nell'unità D che fungerà da file di backup per la cartella di lavoro attiva.
Spiegazione del codice
Se non va bene allora
MsgBox "Copia di backup non salvata!", vbExclamation, ThisWorkbook.Name
Finisci se
Il codice sopra viene utilizzato per visualizzare il messaggio di errore, quando si verifica un errore di runtime durante l'esecuzione della macro.
Se AWB.Path = "" Allora
"Visualizzazione della finestra di dialogo Salva con nome per il salvataggio dei file"
Application.Dialogs(xlDialogSaveAs).Show
Il codice sopra viene utilizzato per visualizzare la finestra di dialogo Salva con nome, se il file non viene salvato prima di eseguire il backup del file.
Si prega di seguire sotto per il codice
Option Explicit Sub SaveWorkbookBackup() Dim AWB As Workbook, BackupFileName As String, i As Integer, Ok As Boolean On Error GoTo NotAbleToSave Set AWB = ActiveWorkbook 'Assegna il percorso completo del file lungo il nome file alla variabile BackupFileName BackupFileName = AWB.FullName 'Verifica se il file viene salvato 'Se il file non viene salvato, il file viene salvato If AWB.Path = "" Then 'Visualizzazione della finestra di dialogo Salva con nome per il salvataggio del file Application.Dialogs(xlDialogSaveAs).Show Else 'Rimozione dell'estensione del file dal nome del file i = 0 While InStr(i + 1, BackupFileName, ".") > 0 'Trova l'estensione del file i = InStr(i + 1, BackupFileName, ".") Wend If i > 0 Then BackupFileName = Left(BackupFileName, i - 1) 'Aggiungo l'estensione di backup ".bak" con il nome del file BackupFileName = BackupFileName & ".bak" Ok = False con AWB .Save 'Creazione del backup del file .SaveCopyAs BackupFileName Ok = True End With End If NotAbleToSave: 'Codice per la gestione degli errori impostato AWB = Nothing If Not Ok Then MsgBox "Copia di backup non salvata!", vbExclamation, ThisWork book.Name End If End Sub Sub SaveWorkbookBackupToFloppy() Dim AWB As Workbook, BackupFileName As String, i As Integer, Ok As Boolean Dim DriveName As String On Error GoTo NotAbleToSave 'Specifica il percorso per eseguire il backup in D drive DriveName = "D :\" 'Inizializzazione delle variabili Imposta AWB = ActiveWorkbook BackupFileName = AWB.Name Ok = False 'Controllo se il file è stato salvato 'Se il file non è stato salvato, il file viene salvato If AWB.Path = "" Allora 'Visualizza la finestra di dialogo Salva con nome per salvataggio file Application.Dialogs(xlDialogSaveAs).Show Else 'Eliminazione file se il file di backup esiste già If Dir(DriveName & BackupFileName) "" Then Kill DriveName e BackupFileName End If With AWB .Save 'Creazione del file di backup .SaveCopyAs DriveName e BackupFileName Ok = True End With End If NotAbleToSave: 'Codice per la gestione degli errori Set AWB = Nothing If Not Ok Then MsgBox "Copia di backup non salvata!", vbExclamation, ThisWorkbook.Name End If End Sub
Se ti è piaciuto questo blog, condividilo con i tuoi amici su Facebook. Inoltre, puoi seguirci su Twitter e Facebook.
Ci piacerebbe avere tue notizie, facci sapere come possiamo migliorare il nostro lavoro e renderlo migliore per te. Scrivici al sito di posta elettronica