اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

الردود الموصى بها

قام بنشر

السلام عليكم ورحمة الله وبركاتة

يوجد بالمنتدى الكثير الكثير من الأمثلة على أخذ نسخه احتياطية

بعدة أفكار  ولو تتبعنا قليلا لوجدنا ان في الاغلب الاعم توجد مشاركة او بصمة للاستاذ ابو خليل

ولكن للاسف احزنني كثيرا ان اغلب الامثلة مبعثرة ولم يقم احد بتنقيحها ووضعها للاستخدام الجاهز

فأتمنى من استاذي ابو خليل انشاء موضوع خاص بأمثلته ووضعها جميعا في نفس الموضوع

مع شرح كل مثال ومميزاته وكيفية عمله

الآن أتي لما احتاجه

هذا المثال هو للاستاذ ابو خليل ويقوم

بأخذ نسخه احتياطية من قاعدة بيانات يتم اختيار مسارها من الجدول حيث تم تخزين المسار به مسبقا

وبالصيغة المختاره ايضا والمدة المحدده

لكن توجد مشكلة في المثال

بحيث ان اخذ النسخه وضغطها بملف بصيغة  winrar  وصيغة winzip لا تفتح وتظهر رسالة بأن الارشيف معطوب او رسالة مشابها لها

المطلوب

تعديل مشكلة نسخة winrar  و winzip

ايضا مطلوب الاحتفاظ بأخر ثلاث نسخ في مجلد النسخ الاحتياطي وحذف المتبقي

يوجد ايضا مثال للاستاذ ابو خليل بالنسبه لحذف النسخ  ولكن لم أتمكن من تطبيقه

المرفق x  هو المثال المطلوب التعديل عليه

المرفق db  توجد به طريقة حذف النسخ ولكنها بحسب اخر ثلاثة ايام والمطلوب حذف اقدم النسخ والاحتفاظ فقط بأخر ثلاث نسخ

 

x.rar

db.rar

قام بنشر

السلام عليكم

اقتباس

المرفق db  توجد به طريقة حذف النسخ ولكنها بحسب اخر ثلاثة ايام والمطلوب حذف اقدم النسخ والاحتفاظ فقط بأخر ثلاث نسخ

صحيح تفحص التاريخ  وآخر ثلاثة ايام  غير عملي فقد يتوقف العمل في البرنامج اكثر من ذلك وحينها يتم حذف جميع النسخ

رغم اننا في المثال اخذنا الحيطة باخذ نسخة عند الفتح  ، يبقى المسألة محتملة المخاطرة

لذا بحثت في المنتديات المتخصصة وخرجت بهذا الكود الجميل الذي يحقق المطلوب بكل كفاءة :

Sub DeleteOldFiles()
    Dim fso As New FileSystemObject
    Dim fil As File
    Dim oldfile As File
    Dim BackUpPath As String 'This is the FOLDER where your backups are stored

    Do Until fso.GetFolder(BackUpPath).Files.Count < 4
        For Each fil In fso.GetFolder(BackUpPath).Files
            'Checks to see if this file is older than the oldest file thus far
            If oldfile Is Nothing Then Set oldfile = fil
            If oldfile.DateLastModified > fil.DateLastModified Then Set oldfile = fil
        Next fil
        fso.DeleteFile oldfile, True
        Set oldfile = Nothing
    Loop

End Sub

هذا الكود يتطلب تثبيت مكتبة   microsoft Script Runtime

  • Like 2
قام بنشر (معدل)
منذ ساعه, ابوخليل said:

السلام عليكم

صحيح تفحص التاريخ  وآخر ثلاثة ايام  غير عملي فقد يتوقف العمل في البرنامج اكثر من ذلك وحينها يتم حذف جميع النسخ

رغم اننا في المثال اخذنا الحيطة باخذ نسخة عند الفتح  ، يبقى المسألة محتملة المخاطرة

لذا بحثت في المنتديات المتخصصة وخرجت بهذا الكود الجميل الذي يحقق المطلوب بكل كفاءة :


Sub DeleteOldFiles()
    Dim fso As New FileSystemObject
    Dim fil As File
    Dim oldfile As File
    Dim BackUpPath As String 'This is the FOLDER where your backups are stored

    Do Until fso.GetFolder(BackUpPath).Files.Count < 4
        For Each fil In fso.GetFolder(BackUpPath).Files
            'Checks to see if this file is older than the oldest file thus far
            If oldfile Is Nothing Then Set oldfile = fil
            If oldfile.DateLastModified > fil.DateLastModified Then Set oldfile = fil
        Next fil
        fso.DeleteFile oldfile, True
        Set oldfile = Nothing
    Loop

End Sub

هذا الكود يتطلب تثبيت مكتبة   microsoft Script Runtime

الله يعطيك العافية استاذ

لم تنجح محاولاتي في توظيف الكود بالشكل الصحيح

امل التعديل على المرفق x بالمشاركة الأولى

تم تعديل بواسطه kaser906
قام بنشر
7 ساعات مضت, ابوخليل said:

تفضل

لاحظ انه يحذف جميع الملفات ويبقي على أحدث 3 ملفات فقط 

x.rar

شكرا لك استاذ

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information