از اکسل در مجموعه اداری زیاد استفاده میشه ، تصور کنید یه فایل اکسل رو طرحبندی کردید و به پرسنل دادید ، ماندگاری اطلاعات این فایل مهمه چون اطلاعات حسابداری شرکت در اون ثبت میشه ، آیا صرفا آموزش به پرسنل به اینکه همیشه باید از این فایل کپی بگیری و بزاری مثلا تو درایو فلان کافیه ؟ اگه پرسنل اینکارو نکنن چی ؟
نرم افزارهای backup گیری زیادی وجود داره اما آیا نصب این نرم افزارها فقط به خاطر کپی ار یه فایل اکسلی ارزش داره؟ صد البته که اگه اطلاعات مهم باشه آره ، اما راه دیگه ای هم وجود داره :
با نوشتن یه کد کوچیک در کدنویسی اکسل می تونیم این مشکل رو حل کنیم بدین صورت :
ابتدا یک ماکرو رو Record می زنیم و با ماوس یه جایی از صفحه رو به دلخواه کلیک می کنیم سپس Save macro رو می زنیم ، هدف فقط ساختن کد ماکرویی ابتدایی برای هدف خودمونه ،
حالا از قسمت view macro روی ماکرو موردنظر کلیک کرد (مثلا macro2) سپس view می زنیم، کد زیر نمایش می یابد
Sub Macro2()
هرچی مابین این دو خط هست رو پاک کنید
End Sub
حالا کدهای زیرا بین دو خط اضافه کنید :
Dim strFile As String
Dim strName As String
Dim lExt As Long
Dim strDir As String
Dim strExt As String
strName = ActiveWorkbook.Name
strDir = "D:\Backup\"
If UCase(Right(strName, 4)) = ".XLS" Then
lExt = 4
Else
lExt = 5
End If
strFile = Left(strName, Len(strName) - lExt)
strExt = Right(strName, lExt)
ActiveWorkbook.SaveCopyAs strDir & strFile _
& format(Now, "_yyyymmdd_HhMm") & strExt
MsgBox "Backup Done .", vbInformation
جای "D:\Backup\" می توان مسیر موردنظر جهت مسیر فایل های کپی پشتیبان در نظر بگیریم.
حالا کافیه که از منوی insert یه shape اضافه کنیم و پس از راست کلیک کردن بروی اون از قسمت assign macro به ماکرو خودمون (macro2) اونو ارتباط بدیم .
اینم یه روش دیگه backup گیری :
http://stackoverflow.com/questions/23574231/backup-when-closing-file-excel-2010-vba