דילוג לתוכן
  • חוקי הפורום
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר
עיצובים
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • ברירת מחדל (ללא עיצוב (ברירת מחדל))
  • ללא עיצוב (ברירת מחדל)
כיווץ
לוגו מותג
  1. דף הבית
  2. מחשבים וטכנולוגיה
  3. עזרה הדדית - מחשבים וטכנולוגיה
  4. בקשה | מיון קבצים מרובים לתיקיות לפי קובץ אקסל

בקשה | מיון קבצים מרובים לתיקיות לפי קובץ אקסל

מתוזמן נעוץ נעול הועבר עזרה הדדית - מחשבים וטכנולוגיה
11 פוסטים 4 כותבים 94 צפיות 5 Watching
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • ס מנותק
    ס מנותק
    סתם אחד 2
    כתב נערך לאחרונה על ידי
    #1

    היי
    יש לי קובץ אקסל שבו בעמודה הראשונה שמות קבצים ובעמודה השניה הקטגוריה שלהם
    אני מעוניין להעביר את כלל הקבצצים לתתי תיקיות לפי הקטגוריות שבקובץ
    האם יש תוכנה כל שהיא העושה זאת
    באשכול המצורף דובר על בעיה דומה אך לא הצלחתי להגיע לתוצאה רצויה
    האם יש אפשרות להעלות קובץ מקומפל בכדי לעשות זאת באופן פשוט
    תודה רבה!
    https://mitmachim.top/topic/72044/בירור-מיון-קבצים-מרובים-לפי-שמות/25

    ש תגובה 1 תגובה אחרונה
    0
    • ס סתם אחד 2

      היי
      יש לי קובץ אקסל שבו בעמודה הראשונה שמות קבצים ובעמודה השניה הקטגוריה שלהם
      אני מעוניין להעביר את כלל הקבצצים לתתי תיקיות לפי הקטגוריות שבקובץ
      האם יש תוכנה כל שהיא העושה זאת
      באשכול המצורף דובר על בעיה דומה אך לא הצלחתי להגיע לתוצאה רצויה
      האם יש אפשרות להעלות קובץ מקומפל בכדי לעשות זאת באופן פשוט
      תודה רבה!
      https://mitmachim.top/topic/72044/בירור-מיון-קבצים-מרובים-לפי-שמות/25

      ש מנותק
      ש מנותק
      שלמה11
      כתב נערך לאחרונה על ידי
      #2

      @סתם-אחד-2
      הנה קוד VBA באדיבות GPT

      Sub סידור_קבצים()
          Dim ws As Worksheet
          Dim lastRow As Long
          Dim i As Long
          Dim sourceFolder As String
          Dim fileBaseName As String
          Dim category As String
          Dim fileFound As Boolean
          Dim fileName As String
          Dim targetFolder As String
          Dim fso As Object
          Dim folderPicker As FileDialog
          Dim fileItem As Object
          Dim folder As Object
      
          ' בחירת תיקיית המקור
          Set folderPicker = Application.FileDialog(msoFileDialogFolderPicker)
          With folderPicker
              .Title = "בחר את תיקיית הקבצים"
              .AllowMultiSelect = False
              If .Show <> -1 Then
                  MsgBox "לא נבחרה תיקייה. הפעולה הופסקה.", vbExclamation
                  Exit Sub
              End If
              sourceFolder = .SelectedItems(1)
              If Right(sourceFolder, 1) <> "\" Then sourceFolder = sourceFolder & "\"
          End With
      
          Set fso = CreateObject("Scripting.FileSystemObject")
          Set ws = ThisWorkbook.Sheets(1)
          Set folder = fso.GetFolder(sourceFolder)
          lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row
      
          For i = 2 To lastRow
              fileBaseName = Trim(ws.Cells(i, 1).Value)
              category = Trim(ws.Cells(i, 2).Value)
              fileFound = False
      
              If fileBaseName <> "" And category <> "" Then
                  ' חיפוש קובץ עם שם מתאים (ללא סיומת)
                  For Each fileItem In folder.Files
                      If LCase(fso.GetBaseName(fileItem.Name)) = LCase(fileBaseName) Then
                          fileName = fileItem.Name
                          fileFound = True
                          Exit For
                      End If
                  Next fileItem
      
                  If fileFound Then
                      targetFolder = sourceFolder & category & "\"
                      If Not fso.FolderExists(targetFolder) Then
                          fso.CreateFolder targetFolder
                      End If
                      fso.MoveFile sourceFolder & fileName, targetFolder & fileName
                      Debug.Print "? הועבר: " & fileName & " ? " & category
                  Else
                      Debug.Print "? לא נמצא קובץ עבור: " & fileBaseName
                  End If
              End If
          Next i
      
          MsgBox "ההעברה בוצעה בהצלחה", vbInformation
      End Sub
      
      
      ס תגובה 1 תגובה אחרונה
      0
      • ש שלמה11

        @סתם-אחד-2
        הנה קוד VBA באדיבות GPT

        Sub סידור_קבצים()
            Dim ws As Worksheet
            Dim lastRow As Long
            Dim i As Long
            Dim sourceFolder As String
            Dim fileBaseName As String
            Dim category As String
            Dim fileFound As Boolean
            Dim fileName As String
            Dim targetFolder As String
            Dim fso As Object
            Dim folderPicker As FileDialog
            Dim fileItem As Object
            Dim folder As Object
        
            ' בחירת תיקיית המקור
            Set folderPicker = Application.FileDialog(msoFileDialogFolderPicker)
            With folderPicker
                .Title = "בחר את תיקיית הקבצים"
                .AllowMultiSelect = False
                If .Show <> -1 Then
                    MsgBox "לא נבחרה תיקייה. הפעולה הופסקה.", vbExclamation
                    Exit Sub
                End If
                sourceFolder = .SelectedItems(1)
                If Right(sourceFolder, 1) <> "\" Then sourceFolder = sourceFolder & "\"
            End With
        
            Set fso = CreateObject("Scripting.FileSystemObject")
            Set ws = ThisWorkbook.Sheets(1)
            Set folder = fso.GetFolder(sourceFolder)
            lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row
        
            For i = 2 To lastRow
                fileBaseName = Trim(ws.Cells(i, 1).Value)
                category = Trim(ws.Cells(i, 2).Value)
                fileFound = False
        
                If fileBaseName <> "" And category <> "" Then
                    ' חיפוש קובץ עם שם מתאים (ללא סיומת)
                    For Each fileItem In folder.Files
                        If LCase(fso.GetBaseName(fileItem.Name)) = LCase(fileBaseName) Then
                            fileName = fileItem.Name
                            fileFound = True
                            Exit For
                        End If
                    Next fileItem
        
                    If fileFound Then
                        targetFolder = sourceFolder & category & "\"
                        If Not fso.FolderExists(targetFolder) Then
                            fso.CreateFolder targetFolder
                        End If
                        fso.MoveFile sourceFolder & fileName, targetFolder & fileName
                        Debug.Print "? הועבר: " & fileName & " ? " & category
                    Else
                        Debug.Print "? לא נמצא קובץ עבור: " & fileBaseName
                    End If
                End If
            Next i
        
            MsgBox "ההעברה בוצעה בהצלחה", vbInformation
        End Sub
        
        
        ס מנותק
        ס מנותק
        סתם אחד 2
        כתב נערך לאחרונה על ידי
        #3

        @שלמה11
        תודה רבה!
        הסקריפט מפעיל את עצמו ואף עולה הודעה לבסוף שהקבצים הועברו בהצלחה
        אך למעשה לא קורה כלום והקבצים לא הוברו לתיקיות
        אשמח אם תוכל לעזור בענין

        א ש 2 תגובות תגובה אחרונה
        0
        • ס סתם אחד 2

          @שלמה11
          תודה רבה!
          הסקריפט מפעיל את עצמו ואף עולה הודעה לבסוף שהקבצים הועברו בהצלחה
          אך למעשה לא קורה כלום והקבצים לא הוברו לתיקיות
          אשמח אם תוכל לעזור בענין

          א מנותק
          א מנותק
          אופיר123
          כתב נערך לאחרונה על ידי
          #4

          @סתם-אחד-2 קצת לא הבנתי את הבקשה, באיזו תיקיה הקבצים נמצאים כעת? כולם יחד? להעביר אותם לתיקיות אחרות שמה השם שלהם? שמות הקטגוריות?

          ס תגובה 1 תגובה אחרונה
          0
          • א אופיר123

            @סתם-אחד-2 קצת לא הבנתי את הבקשה, באיזו תיקיה הקבצים נמצאים כעת? כולם יחד? להעביר אותם לתיקיות אחרות שמה השם שלהם? שמות הקטגוריות?

            ס מנותק
            ס מנותק
            סתם אחד 2
            כתב נערך לאחרונה על ידי
            #5

            @אופיר123
            כלל הקבצים נמצאים כעת בתיקיית אחת ואני מעוניין לחלק אותם לפי קטגוריות
            בקובץ יש שני עמודות אחד של שם הקובץ והשני שם של הקטגוריה כלומר שם התיקייה שאני מעוניים שהקובץ יעבור אליו.

            תגובה 1 תגובה אחרונה
            0
            • ס סתם אחד 2

              @שלמה11
              תודה רבה!
              הסקריפט מפעיל את עצמו ואף עולה הודעה לבסוף שהקבצים הועברו בהצלחה
              אך למעשה לא קורה כלום והקבצים לא הוברו לתיקיות
              אשמח אם תוכל לעזור בענין

              ש מנותק
              ש מנותק
              שלמה11
              כתב נערך לאחרונה על ידי
              #6

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

              ס תגובה 1 תגובה אחרונה
              0
              • ש שלמה11

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

                ס מנותק
                ס מנותק
                סתם אחד 2
                כתב נערך לאחרונה על ידי
                #7

                @שלמה11
                כלומר הוא מעביר את הקבצים רק במקרה שהתיקיות קיימות?
                ניתן להוסיף לסקריפט אפשרות שבמקרה שאין תיקייה קיימת הוא יצור תיקייה?

                תודה רבה!

                ע תגובה 1 תגובה אחרונה
                0
                • ס סתם אחד 2

                  @שלמה11
                  כלומר הוא מעביר את הקבצים רק במקרה שהתיקיות קיימות?
                  ניתן להוסיף לסקריפט אפשרות שבמקרה שאין תיקייה קיימת הוא יצור תיקייה?

                  תודה רבה!

                  ע מנותק
                  ע מנותק
                  ע"ה דכו"ע
                  כתב נערך לאחרונה על ידי ע"ה דכו"ע
                  #8

                  @סתם-אחד-2 כתב בבקשה | מיון קבצים מרובים לתיקיות לפי קובץ אקסל:

                  @שלמה11
                  כלומר הוא מעביר את הקבצים רק במקרה שהתיקיות קיימות?
                  ניתן להוסיף לסקריפט אפשרות שבמקרה שאין תיקייה קיימת הוא יצור תיקייה?

                  תודה רבה!

                  לא, מעיון במאקרו הוא מוסיף את התיקיה במקרה שהיא לא קיימת (בשורה 52), רק השמות של הקבצים צריכים להיות מדוייקים.

                  ס תגובה 1 תגובה אחרונה
                  0
                  • ע ע"ה דכו"ע

                    @סתם-אחד-2 כתב בבקשה | מיון קבצים מרובים לתיקיות לפי קובץ אקסל:

                    @שלמה11
                    כלומר הוא מעביר את הקבצים רק במקרה שהתיקיות קיימות?
                    ניתן להוסיף לסקריפט אפשרות שבמקרה שאין תיקייה קיימת הוא יצור תיקייה?

                    תודה רבה!

                    לא, מעיון במאקרו הוא מוסיף את התיקיה במקרה שהיא לא קיימת (בשורה 52), רק השמות של הקבצים צריכים להיות מדוייקים.

                    ס מנותק
                    ס מנותק
                    סתם אחד 2
                    כתב נערך לאחרונה על ידי
                    #9

                    @ע-amp-amp-amp-quot-ה-דכו-amp-amp-amp-quot-ע

                    מה זאת אומרת ששמות הקבצים צריכים להיות מדוייקים?

                    ע 2 תגובות תגובה אחרונה
                    0
                    • ס סתם אחד 2

                      @ע-amp-amp-amp-quot-ה-דכו-amp-amp-amp-quot-ע

                      מה זאת אומרת ששמות הקבצים צריכים להיות מדוייקים?

                      ע מנותק
                      ע מנותק
                      ע"ה דכו"ע
                      כתב נערך לאחרונה על ידי ע"ה דכו"ע
                      #10

                      @סתם-אחד-2 כתב בבקשה | מיון קבצים מרובים לתיקיות לפי קובץ אקסל:

                      @ע-amp-amp-amp-quot-ה-דכו-amp-amp-amp-quot-ע

                      מה זאת אומרת ששמות הקבצים צריכים להיות מדוייקים?

                      השמות של הקבצים להעברה שבטבלה באקסל.

                      תגובה 1 תגובה אחרונה
                      0
                      • ס סתם אחד 2

                        @ע-amp-amp-amp-quot-ה-דכו-amp-amp-amp-quot-ע

                        מה זאת אומרת ששמות הקבצים צריכים להיות מדוייקים?

                        ע מנותק
                        ע מנותק
                        ע"ה דכו"ע
                        כתב נערך לאחרונה על ידי
                        #11

                        @סתם-אחד-2
                        שים לב שהשמות של הקבצים שבאקסל כתובים בלי הסיומת, וכן אולי כדאי להוסיף TRIM גם בשמות הקבצים של התיקייה, כלומר אתה יכול לשנות את שורה 42 במאקרו מ

                                        If LCase(fso.GetBaseName(fileItem.Name)) = LCase(fileBaseName) Then
                        

                        ל

                                        If Trim(LCase(fso.GetBaseName(fileItem.Name))) = LCase(fileBaseName) Then
                        
                        תגובה 1 תגובה אחרונה
                        0

                        • התחברות

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

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