بکاپ گیری در اکسل

Collapse
این تاپیک قفل است.
X
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • omid0912

    • 2019/04/30
    • 51

    [حل شده] بکاپ گیری در اکسل

    با عرض سلام ،
    یک فایل اکسل دارم که داخل اون یازده شیت داره.
    حالا می خوام، پس ازافزودن یک سری داده مربوط به هر شیت،
    با بستن فایل در پایان کار، از کل فایل، یک بکاپ برام بگیره و هر سری که فایل اصلی رو می بندم همون فایل بکاپ رو برام آپدیت کنه .
    کلا دو تا فایل داشته باشم ی فایل اصلی و یک فایل بکاپ از کل شیت ها. با فرمت (.xlsm)
    اگر شیت اضافه کردم اون شیت رو هم کجا معرفیش کنم. اسم فایل اکسل اصلیم "Omid" هستش.
    کد ش رو برام محبت کنید بنویسید و آدرسش رو بزارید "D:\Omid\Bourse\Backup of Excel file"
    بعد با همون ضربدر کار می کنه( بکاپ می گیره) یا نیاز به کلید هست؟
    محبت کنید کد بدید از طریق سیو از فراموش می کنم بکاپ بگیرم.
    عزیزان زنده باشید ممنون از لطفتون
  • M_ExceL

    • 2018/04/23
    • 677

    #2
    نوشته اصلی توسط omid0912
    با عرض سلام ،
    یک فایل اکسل دارم که داخل اون یازده شیت داره.
    حالا می خوام، پس ازافزودن یک سری داده مربوط به هر شیت،
    با بستن فایل در پایان کار، از کل فایل، یک بکاپ برام بگیره و هر سری که فایل اصلی رو می بندم همون فایل بکاپ رو برام آپدیت کنه .
    کلا دو تا فایل داشته باشم ی فایل اصلی و یک فایل بکاپ از کل شیت ها. با فرمت (.xlsm)
    اگر شیت اضافه کردم اون شیت رو هم کجا معرفیش کنم. اسم فایل اکسل اصلیم "Omid" هستش.
    کد ش رو برام محبت کنید بنویسید و آدرسش رو بزارید "D:\Omid\Bourse\Backup of Excel file"
    بعد با همون ضربدر کار می کنه( بکاپ می گیره) یا نیاز به کلید هست؟
    محبت کنید کد بدید از طریق سیو از فراموش می کنم بکاپ بگیرم.
    عزیزان زنده باشید ممنون از لطفتون
    سلام،
    فایل پیوست رو بررسی کنید.
    کد:
    Private Sub Workbook_Deactivate()
    N = "BK-" + Format(Now(), "(yyyy-mm-dd)--(hh-mm)") + ".xlsx"
    mydir = ThisWorkbook.Path & "\"
    Application.DisplayAlerts = False
    ThisWorkbook.Save
    ThisWorkbook.SaveAs Filename:= _
    mydir & N, FileFormat:= _
    xlOpenXMLWorkbook, CreateBackup:=False
    End Sub
    هر وقت فایل رو ببندید فایل ذخیره میشه و یک فایل بکاپ از آن در مسیر جاری فایل، و با نام تاریخ و ساعت ایجاد میشه.
    توضیح : با ظاهر شدن پیغام ذخیره فایل و کلیک روی dont save باز هم تغییرات ذخیره می شود.
    فایل های پیوست شده
    [CENTER]Telegram Channel : [url]https://t.me/UltraOfficeSkills[/url]
    [/CENTER]

    کامنت

    • حسام بحرانی

      • 2013/09/29
      • 2065
      • 72.00

      #3
      سلام
      این سؤال به تالار مربوطه ارجاع گردید. درصورتی که پاسخ خودتون ررو دریافت کردید تاپیک رو
      حل شده کنید.
      موفق باشید.
      [CENTER][B][SIZE=5][COLOR=#006600][FONT=georgia][COLOR=#800000]!With [/COLOR][/FONT][/COLOR][COLOR=#006600][FONT=georgia]God [/FONT][/COLOR][COLOR=#006600][FONT=georgia][COLOR=#800000]all [/COLOR][/FONT][/COLOR][COLOR=#800000][FONT=georgia]things are [/FONT][/COLOR][COLOR=#006600][FONT=georgia]possible[/FONT][/COLOR][/SIZE][/B][B][FONT=Tahoma]
      [/FONT][/B][/CENTER]
      [CENTER][B][FONT=Tahoma] [IMG]http://forum.exceliran.com/attachment.php?attachmentid=5334&d=1419428336[/IMG]
      [/FONT][/B][SIZE=1][FONT=Tahoma][B][FONT=Tahoma]
      [/FONT][/B][/FONT][/SIZE]
      [/CENTER]

      کامنت

      • omid0912

        • 2019/04/30
        • 51

        #4
        سلام خسته نباشید.
        برای بکاب گیری انواع و اقسام کد میشه تعریف کرد.از لطفتون ممنونم ولی اون کار بکارم نمیاد. چون هربار ی فایل با تاریخ درست میکنه و در مسیر دلخواه من نیست.
        من درخواستم واضح هست.
        1- کلا دو تا فایل داشته باشم ی فایل اصلی و یک فایل بکاپ از کل شیت ها. با فرمت (.xlsm)
        2- آدرس محل سیو
        "D:\Omid\Bourse\Backup of Excel file" باشه.
        3-
        با همون ضربدر کار کنه( بکاپ بگیره).
        من هیچ ازلاعاتی در مورد کد نوشتن ندارم.
        هروقت به آدرس سیو بکاپ رفتم کلا ی فایل اکسل از بکاپ باشه. نیاز به سیو با تاریخ نیست.
        ممنون میشم کد برام بنویسید.
        با تشکر از شما عزیزان

        کامنت

        • omid0912

          • 2019/04/30
          • 51

          #5
          نوشته اصلی توسط حسام بحرانی
          سلام
          این سؤال به تالار مربوطه ارجاع گردید. درصورتی که پاسخ خودتون ررو دریافت کردید تاپیک رو
          حل شده کنید.
          موفق باشید.
          بله به نتیجه رسیدم حتما این کار رو می کنم.

          کامنت

          • M_ExceL

            • 2018/04/23
            • 677

            #6
            نوشته اصلی توسط omid0912
            سلام خسته نباشید.
            برای بکاب گیری انواع و اقسام کد میشه تعریف کرد.از لطفتون ممنونم ولی اون کار بکارم نمیاد. چون هربار ی فایل با تاریخ درست میکنه و در مسیر دلخواه من نیست.
            من درخواستم واضح هست.
            1- کلا دو تا فایل داشته باشم ی فایل اصلی و یک فایل بکاپ از کل شیت ها. با فرمت (.xlsm)
            2- آدرس محل سیو
            "D:\Omid\Bourse\Backup of Excel file" باشه.
            3-
            با همون ضربدر کار کنه( بکاپ بگیره).
            من هیچ ازلاعاتی در مورد کد نوشتن ندارم.
            هروقت به آدرس سیو بکاپ رفتم کلا ی فایل اکسل از بکاپ باشه. نیاز به سیو با تاریخ نیست.
            ممنون میشم کد برام بنویسید.
            با تشکر از شما عزیزان
            سلام،
            بفرمایید :
            کد:
            Sub M_excel()
            N = ThisWorkbook.Name
            mydir = "D:\Omid\Bourse\Backup of Excel file\"
            Name = mydir + N
                If Dir(mydir) = "" Then
                    Shell "cmd /c md " & """" & mydir & """", vbHide
                End If
            Application.DisplayAlerts = False
            ThisWorkbook.Save
            ThisWorkbook.SaveAs Filename:= _
            Name, FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
            Application.Quit
            End Sub
            در فایل پیوست یک باتن برای خروج و ذخیره قرار داده شده روی باتن خروج کلیک کنید.
            داخل ماژول Workbook هم کد زیر رو پیست کنید :
            کد:
            Private Sub Workbook_Deactivate()
            Call M_excel
            End Sub
            فایل های پیوست شده
            [CENTER]Telegram Channel : [url]https://t.me/UltraOfficeSkills[/url]
            [/CENTER]

            کامنت

            • omid0912

              • 2019/04/30
              • 51

              #7
              سلام،
              عزیز این سوال رو جواب بدید روی حل شده کلیک می کنم.
              من این کد رو
              Sub M_excel()
              N = ThisWorkbook.Name
              mydir = "D:\Omid\Bourse\Backup of Excel file"
              Name = mydir + N
              If Dir(mydir) = "" Then
              Shell "cmd /c md " & """" & mydir & """", vbHide
              End If
              Application.DisplayAlerts = False
              ThisWorkbook.Save
              ThisWorkbook.SaveAs Filename:= _
              Name, FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
              Application.Quit
              End Subرود فایل اصلی اجرا کردم و مشکلی نیست.
              حالا سوالم اینه
              این کدزیر رو که گفته بودید "
              داخل ماژول Workbook هم کد زیر رو پیست کنید"
              دیدم کارم با کد بالا راه افناد و انجام شده، دیگه کاری با اون نداشتم فقط ی توضیح بدید کار کد زیر چی هست ،که بعد به مشکل نخورم.
              ممنون از لطفتون

              Private Sub Workbook_Deactivate()
              Call M_excel
              End Sub

              کامنت

              • M_ExceL

                • 2018/04/23
                • 677

                #8
                نوشته اصلی توسط omid0912
                سلام،
                عزیز این سوال رو جواب بدید روی حل شده کلیک می کنم.
                من این کد رو
                Sub M_excel()
                N = ThisWorkbook.Name
                mydir = "D:\Omid\Bourse\Backup of Excel file"
                Name = mydir + N
                If Dir(mydir) = "" Then
                Shell "cmd /c md " & """" & mydir & """", vbHide
                End If
                Application.DisplayAlerts = False
                ThisWorkbook.Save
                ThisWorkbook.SaveAs Filename:= _
                Name, FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
                Application.Quit
                End Subرود فایل اصلی اجرا کردم و مشکلی نیست.
                حالا سوالم اینه
                این کدزیر رو که گفته بودید "
                داخل ماژول Workbook هم کد زیر رو پیست کنید"
                دیدم کارم با کد بالا راه افناد و انجام شده، دیگه کاری با اون نداشتم فقط ی توضیح بدید کار کد زیر چی هست ،که بعد به مشکل نخورم.
                ممنون از لطفتون

                Private Sub Workbook_Deactivate()
                Call M_excel
                End Sub
                شما اگر فایل رو با ضربدر ببندید چون روی باتن کلیک نکردید می بایست در این حالت هم کد اصلی اجرا شود و عملیات بکاپ و ذخیره را انجام دهد
                این کد، کد اصلی رو زمانی که با ضربدر می خواهید فایل رو ببندید صدا می زنه.
                دلیل اینکه بنده از باتن استفاده کردم اینه که در این حالت دیگر پیغامی مبنی بر ذخیره فایل نمایش داده نمی شود.
                ولی اگر تغیییراتی در فایل ایجاد کنید و فایل رو با ضربدر ببندید پیغامی مبنی بر ذخیره فایل نمایش داده می شود.
                ولی در نهایت کد اصلی اجرا می شود سپس فایل بسته می شود.
                [CENTER]Telegram Channel : [url]https://t.me/UltraOfficeSkills[/url]
                [/CENTER]

                کامنت

                • omid0912

                  • 2019/04/30
                  • 51

                  #9
                  با تشکر از شما عزیزان

                  کامنت

                  چند لحظه..