از اکسل در مجموعه اداری زیاد استفاده میشه ، تصور کنید یه فایل اکسل رو طرحبندی کردید و به پرسنل دادید ، ماندگاری اطلاعات این فایل مهمه چون اطلاعات حسابداری شرکت در اون ثبت میشه ، آیا صرفا آموزش به پرسنل به اینکه همیشه باید از این فایل کپی بگیری و بزاری مثلا تو درایو فلان کافیه ؟ اگه پرسنل اینکارو نکنن چی ؟

نرم افزارهای 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