Uložte zálohu zošita pomocou VBA v programe Microsoft Excel

Anonim

Zálohovanie údajov by sa malo vykonávať v pravidelných časových intervaloch, pretože každá nesprávna úprava iným používateľom alebo neúmyselné vymazanie súboru programu Excel môže veľa času a informácií pokaziť.

V tomto článku sa budeme zaoberať tým, ako zálohovať súbor Excel pomocou VBA.

V tomto článku sa budeme zaoberať dvoma rôznymi spôsobmi zálohovania pomocou kódu VBA. Napísali sme dve makrá na zálohovanie súborov programu Excel.

Makro „SaveWorkbookBackup“ vytvorí zálohu súboru programu Excel s príponou „.bak“ v rovnakom priečinku, kam je uložený aktívny zošit.

Makro „SaveWorkbookBackupToFloppy“ vytvorí kópiu aktívneho zošita na disku D, ktorá bude fungovať ako záložný súbor pre aktívny zošit.

Vysvetlenie kódu

Ak to nie je v poriadku, potom

MsgBox „Záložná kópia nebola uložená!“, VbExclamation, ThisWorkbook.Name

Koniec Ak

Vyššie uvedený kód sa používa na zobrazenie chybového hlásenia, keď počas vykonávania makra dôjde k nejakej chybe runtime.

Ak AWB.Path = "" Potom

'Zobrazenie dialógového okna Uložiť ako na ukladanie súborov

Application.Dialogs (xlDialogSaveAs) .Show

Vyššie uvedený kód sa používa na zobrazenie dialógového okna Uložiť ako, ak súbor nie je uložený pred zálohovaním súboru.

Pri kódovaní postupujte podľa nižšie uvedených pokynov

 Možnosť Explicitná čiastková SaveWorkbookBackup () Dim AWB ako zošit, BackupFileName ako reťazec, i ako celé číslo, Ok ako booleovský pri chybe GoTo NotAbleToSave Nastaviť AWB = ActiveWorkbook 'Priradiť úplnú cestu k súboru k názvu súboru k premennej BackupFileName BackupFileName = AWB.FullName' Kontrola, či súbor sa uloží 'Ak sa súbor neuloží, uloží sa súbor Ak AWB.Path = "" Potom' Zobrazí sa dialógové okno Uložiť ako na uloženie súboru Application.Dialogs (xlDialogSaveAs). Zobraziť iné 'Odstránenie prípony súboru z názvu súboru i = 0 Kým InStr (i + 1, BackupFileName, ".")> 0 'Nájdite príponu súboru i = InStr (i + 1, BackupFileName, ".") Wend If i> 0 Then BackupFileName = Left (BackupFileName, i - 1) 'Pridanie záložnej prípony ".bak" s názvom súboru BackupFileName = BackupFileName & ".bak" Ok = False With AWB .Save' Vytvorenie zálohy súboru .SaveCopyAs BackupFileName Ok = True End With End If NotAbleToSave: 'Kód pre spracovanie chýb Nastaviť AWB = Nič, ak nie je v poriadku, potom MsgBox „Záložná kópia nebola uložená!“, 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 'Specify the path for creating up in D drive DriveName = "D : \ "'Inicializácia premenných AWB = ActiveWorkbook BackupFileName = AWB.Name Ok = False' Kontrola, či je súbor uložený 'Ak súbor nie je uložený, uloženie súboru Ak AWB.Path =" "Potom' Zobrazenie dialógového okna Uložiť ako pre uloženie súboru Application.Dialogs (xlDialogSaveAs). Zobraziť iné 'Vymazávací súbor, ak záložný súbor už existuje If Dir (DriveName & BackupFileName) "" Potom Kill DriveName & BackupFileName Koniec Ak s AWB .Save' Vytvorenie záložného súboru .SaveCopyAs DriveName & BackupFileName Ok = True End With End If NotAbleToSave: 'Kód pre spracovanie chýb Nastaviť AWB = Nič, ak nie je v poriadku, potom MsgBox „Záložná kópia nebola uložená!“, VbExclamation, ThisWorkbook.Name Koniec If End Sub 

Ak sa vám tento blog páčil, zdieľajte ho so svojimi priateľmi na Facebooku. Môžete nás tiež sledovať na Twitteri a Facebooku.

Budeme radi, ak sa nám ozvete, dajte nám vedieť, ako môžeme zlepšiť našu prácu a zlepšiť ju pre vás. Napíšte nám na emailovú stránku