דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תוכנה
  3. שאלה | איך למחוק קבצים מתקייה במחשב לפי תנאי מסוים באקסס?

שאלה | איך למחוק קבצים מתקייה במחשב לפי תנאי מסוים באקסס?

מתוזמן נעוץ נעול הועבר תוכנה
9 פוסטים 2 כותבים 268 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • חייםיודלביץח מנותק
    חייםיודלביץח מנותק
    חייםיודלביץ
    כתב ב נערך לאחרונה על ידי חייםיודלביץ
    #1

    שלום וברכה

    אני מנסה לכתוב קוד שימחוק לי קבצים מתקייה מסיומת, אבל רק קבצים שבשם הקובץ התאריך הוא למעלה מ 60 יום אחורה.

    אני כתבתי ככה:

      Kill CurrentProject.Path & "\accesstopdf" & "\" & " " & Format(Date - 30, "dd.mm.yy") & ".pdf"
    

    אך לא מצליח לגרום לו לעבור על כל התקייה בלולאה, לזהות את הקבצים שבשם יש תאריך יותר מ 60 יום אחורה בפורמט PDF

    אודה לעזרה

    תודה

    OdedDvirO תגובה 1 תגובה אחרונה
    0
    • OdedDvirO מנותק
      OdedDvirO מנותק
      OdedDvir
      השיב לחייםיודלביץ ב נערך לאחרונה על ידי OdedDvir
      #2

      @חייםיודלביץ האם אתה מוכרח להשתמש בתאריך שמוטמע בשם הקובץ, או שאפשר להסתמך על התאריך של יצירת הקובץ? האפשרות השנייה יותר פשוטה.

      חייםיודלביץח תגובה 1 תגובה אחרונה
      0
      • חייםיודלביץח מנותק
        חייםיודלביץח מנותק
        חייםיודלביץ
        השיב לOdedDvir ב נערך לאחרונה על ידי
        #3

        @OdedDvir אמר בשאלה | איך למחוק קבצים מתקייה במחשב לפי תנאי מסוים באקסס?:

        @חייםיודלביץ האם אתה מוכרח להשתמש בתאריך שמוטמע בשם הקובץ, או שאפשר להסתמך על התאריך של יצירת הקובץ? האפשרות השנייה יותר פשוטה.

        תאריך יצירת הקובץ זה גם אפשרי

        תודה

        OdedDvirO תגובה 1 תגובה אחרונה
        0
        • OdedDvirO מנותק
          OdedDvirO מנותק
          OdedDvir
          השיב לחייםיודלביץ ב נערך לאחרונה על ידי
          #4

          @חייםיודלביץ הנה דוגמא (תשתמש בזהירות...)

          Private Sub DeleteOldFilesInFolder(folderPath As String, daysAgo As Integer)
          'Deletes all the files in folderPath which were not modified in the last daysAgo days
              Dim fsoLib As Object
              Dim folder As Object
              Dim file As Object
              Dim oldDate As Date
              
              oldDate = DateAdd("d", -daysAgo, Now())
              'Assert trailing backslash
              If Right(folderPath, 1) <> "\" Then folderPath = folderPath & "\"
              'Set a reference to Scripting.FileSystemObject library (late binding)
              Set fsoLib = CreateObject("Scripting.FileSystemObject")
              'Set a reference to the folder in path
              Set folder = fsoLib.GetFolder(folderPath)
              'Loop through each file in folder
              For Each file In folder.Files
                  If (file.DateLastModified < oldDate) Then
                      Debug.Print file.Name & " is too old, goodbye."
                      Kill folderPath & file.Name
                  End If
              Next
          
              'Garbage collection just in case...
              Set fsoLib = Nothing
              Set folder = Nothing
              Set file = Nothing
          End Sub
          
          Private Sub Test()
              DeleteOldFilesInFolder "D:\Temp", 60
          End Sub
          
          חייםיודלביץח תגובה 1 תגובה אחרונה
          4
          • חייםיודלביץח מנותק
            חייםיודלביץח מנותק
            חייםיודלביץ
            השיב לOdedDvir ב נערך לאחרונה על ידי
            #5

            @OdedDvir יש דרך להכניס שיזהה לפי מילה קבועה בשם הקובץ לדוגמא "תעודה"
            אני פשוט רוצה למנוע טעות אם מישהו יכניס לשם קובץ ואז זה ימחק לו רק לפי תאריך יצירת הקובץ.

            @OdedDvir אמר בשאלה | איך למחוק קבצים מתקייה במחשב לפי תנאי מסוים באקסס?:

            If (file.DateLastModified < oldDate) Then
            Debug.Print file.Name & " is too old, goodbye."
            Kill folderPath & file.Name
            End If

            כמו"כ בקוד הנ"ל אם אין קבצים בתקייה הוא מוחק את כל התקייה?

            תודה!

            OdedDvirO תגובה 1 תגובה אחרונה
            0
            • OdedDvirO מנותק
              OdedDvirO מנותק
              OdedDvir
              השיב לחייםיודלביץ ב נערך לאחרונה על ידי
              #6

              @חייםיודלביץ אמר בשאלה | איך למחוק קבצים מתקייה במחשב לפי תנאי מסוים באקסס?:

              יש דרך להכניס שיזהה לפי מילה קבועה בשם הקובץ לדוגמא "תעודה"

              כן, אתה יכול לבדוק בלולאה גם את שם הקובץ:

              If (InStr(1, File.Name, "תעודה"))
              

              אם אין קבצים בתקייה הוא מוחק את כל התקייה?

              לא.

              חייםיודלביץח תגובה 1 תגובה אחרונה
              1
              • חייםיודלביץח מנותק
                חייםיודלביץח מנותק
                חייםיודלביץ
                השיב לOdedDvir ב נערך לאחרונה על ידי
                #7

                @OdedDvir אמר בשאלה | איך למחוק קבצים מתקייה במחשב לפי תנאי מסוים באקסס?:

                If (InStr(1, File.Name, "תעודה"))

                שלבתי את זה ככה בקוד, זה בסדר?

                    For Each file In folder.Files
                        If (InStr(1, file.Name, "תעודה")) Then
                            If (file.DateLastModified < oldDate) Then
                                Debug.Print file.Name & " is too old, goodbye."
                                Kill folderPath & file.Name
                            End If
                        End If
                
                

                בפונקציה כתבתי ככה:

                    Dim ssfile As String
                
                    ssfile = CurrentProject.Path & "\accesstopdf" & "\"
                
                    DeleteOldFilesInFolder ssfile, 1
                
                

                חשוב לי לדעת שזה בסדר בגלל ההשלכות של הפעולה.

                חייםיודלביץח תגובה 1 תגובה אחרונה
                0
                • חייםיודלביץח מנותק
                  חייםיודלביץח מנותק
                  חייםיודלביץ
                  השיב לחייםיודלביץ ב נערך לאחרונה על ידי
                  #8

                  @OdedDvir אשמח אם תוכל לכתוב לי האם הקוד ששלבתי נכון

                  אין לי דרך לבדוק את זה, כי אין לי קבצים ישנים, וזה פעולה רגישה בתוכנה וחשוב לי להיות בטוח שזה תקין.

                  תודה רבה

                  OdedDvirO תגובה 1 תגובה אחרונה
                  0
                  • OdedDvirO מנותק
                    OdedDvirO מנותק
                    OdedDvir
                    השיב לחייםיודלביץ ב נערך לאחרונה על ידי
                    #9

                    @חייםיודלביץ

                    1. הקוד נראה נכון
                    2. לא מומלץ שתסמוך על מישהו אחר, בלי לבדוק בעצמך. פשוט תעתיק קובץ ישן כלשהו לתיקיה ותשנה לו את השם כך שיתאים לתנאי.
                    תגובה 1 תגובה אחרונה
                    1

                    בא תתחבר לדף היומי!
                    • התחברות

                    • אין לך חשבון עדיין? הרשמה

                    • התחברו או הירשמו כדי לחפש.
                    • פוסט ראשון
                      פוסט אחרון
                    0
                    • דף הבית
                    • קטגוריות
                    • פוסטים אחרונים
                    • משתמשים
                    • חיפוש
                    • חוקי הפורום