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

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

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

עזרה דחופה באקסל - איחוד שני קטלוגים יחד.

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

    שבוע טוב.

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

    אני יתן דוגמא: בקטלוג א' יש 3 עמודות,
    שם הספר, נושא, ומספר מדף.
    ומצויים שם כמה ספרים, משנה ברורה, ארחות שבת, שמירת שבת כהלכתה, ואילת השחר, מסילת ישרים.

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

    מה שקרה: שבקטלוג ב' עדכנו את הספרים לפי מספרי המדפים החדשים שלהם, וגם חילקו את הסטים לפי מסכתות, כך שסט שהיה עד היום במדף אחד (והיה רשום ברשומה אחת) מהיום הוא נמצא בכמה מדפים (ומופיע בכמה רשומות).
    מאידך, הגבאי המשיך לעדכן בקטלוג א' את הספרים החדשים שהוא הכניס.

    לכן אני צריך כדלהלן:
    א. שכל הספרים שמופיעים בקטלוג א' שאינם בקטלוג ב' שישארו כמות שהם בקטלוג א'.
    ב. שכל הספרים שמופיעים בקטלוג ב' בשינוי מספר המדף ומופיעים גם בקטלוג א' - שיחליפו את המופיע בקטלוג א'.
    ג. שכל הספרים שמופיעים בקטלוג ב' מפוצלים ובקטלוג א' הם נמצאים ברשומה אחת - יופיעו בקטלוג ככמה רשומות וימחקו את הרשומה הבודדת שמופיע בקטלוג א'.

    מקווה שהובנתי, זה בהחלט מורכב.
    מצרף ג"כ קובץ אקסל עם הדוגמא - לנסיונות.
    תודה למוצא הפיתרון!
    קובץ לדוגמא.xlsx

    yossizY תגובה 1 תגובה אחרונה
    0
    • yossizY מנותק
      yossizY מנותק
      yossiz
      השיב למשתמש מקצוען ב נערך לאחרונה על ידי yossiz
      #2

      @משתמש-מקצוען הצלחתי באמצעות power query. אני לא יודע אם זו הדרך הכי קלה.

      קובץ דוגמה

      הוראות:
      (אם איזה שלב לא ברור, תבקש עוד פירוט)

      • תכניס את הדאטה שנמצא בקטלוג א וקטלוג ב בטבלה או טווח (range) עם שם. בקובץ שהעליתי קראתי לטווח של קטלוג א בשם table1 והטווח של טבלה ב בשם table2 (השם רלוונטי בקוד בהמשך)
      • בלשונית דאטה בחר שאילתת power query ריקה
        35783056-e9bb-4aac-8855-fe81b7baab8d-CleanShot 2022-08-21 at 01.12.25.png
      • תפתח את העורך המתקדם ותכניס את השאילתה הבאה:
      let
          Source = Excel.CurrentWorkbook(),
          table1 = Source{[Name="table1"]}[Content],
          table2 = Source{[Name="table2"]}[Content],
          #"table1 normalized" = Table.TransformColumns(table1, {{"Column1", Text.Trim}}),
          #"table2 normalized" = Table.TransformColumns(table2, {{"Column1", Text.Trim}}),
          filtered = Table.SelectRows(#"table1 normalized", each not Table.Contains(#"table2 normalized", [Column1 = [Column1]], "Column1")) 
      in
          Table.Combine({ #"table2 normalized", filtered })
      
      • שמור

      📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

      משתמש מקצועןמ תגובה 1 תגובה אחרונה
      6
      • משתמש מקצועןמ מנותק
        משתמש מקצועןמ מנותק
        משתמש מקצוען
        השיב לyossiz ב נערך לאחרונה על ידי משתמש מקצוען
        #3

        @yossiz כתב בעזרה דחופה באקסל - איחוד שני קטלוגים יחד.:

        תכניס את הדאטה שנמצא בקטלוג א וקטלוג ב בטבלה או טווח (range) עם שם. בקובץ שהעליתי קראתי לטווח של קטלוג א בשם table1 והטווח של טבלה ב בשם table2 (השם רלוונטי בקוד בהמשך)

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

        (אגב, אני רואה שצדקתי כשהכנסתי את זה לקטגוריה של תיכנות, שיערתי שזה מצריך כתיבת קוד...).

        תודה ענקית!

        עריכה: הסתדרתי, היה לי שגיאה בתהליך, כעת עשיתי שוב, ובאמת הכל עובד הפלא ופלא!

        yossizY תגובה 1 תגובה אחרונה
        1
        • yossizY מנותק
          yossizY מנותק
          yossiz
          השיב למשתמש מקצוען ב נערך לאחרונה על ידי yossiz
          #4

          @משתמש-מקצוען לענ"ד זה עדיין לא נכנס לקטגוריית תכנות, אבל בוא לא נתווכח על זה... 😉

          באקסל אפשר לתת שם לתא או לטווח של תאים. בוחרים את הטווח (או התא היחידי), ואז בפינה למעלה מכניסים שם
          אם מגדירים טווח כטבלה, זה אוטומטי מקבל שם

          תמונה:
          889ad2e1-2200-44a2-995c-839348fca892-CleanShot 2022-08-21 at 01.58.16.png

          בעוד שאני כותב אני רואה שכבר הסתדרת, אז הפוסט הזה יהיה לטובת מי שלא מכיר (כולל את עצמי... אני לא מכיר את אקסל טוב בכלל, למדתי קצת הערב בזכותך 🙂 )

          📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

          משתמש מקצועןמ תגובה 1 תגובה אחרונה
          2
          • משתמש מקצועןמ מנותק
            משתמש מקצועןמ מנותק
            משתמש מקצוען
            השיב לyossiz ב נערך לאחרונה על ידי
            #5

            אם חלק מהשורות מודגשות בצהוב (כלומר כל העמודות של ספרים מסויימים), כיצד אוכל לשמור אותם בצהוב?

            yossizY תגובה 1 תגובה אחרונה
            0
            • yossizY מנותק
              yossizY מנותק
              yossiz
              השיב למשתמש מקצוען ב נערך לאחרונה על ידי yossiz
              #6

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

              • להוסיף עמודה לקטלוג א של פונקציה שאומרת אם שם הספר נמצא בקטלוג ב
                משהו כזה:
              =NOT(ISERROR(VLOOKUP(A1,'קטלוג ב'!A1:A6,1, FALSE)))
              
              • בקובץ הדוגמה שהבאת יש צורך להוסיף גם פונקצית TRIM כי לפעמים השם זהה חוץ מרווח נוסף בסוף
              • ואז לסנן את הקטלוג לפי הערך של סינון זה ולהציג רק שורות ששם הספר לא נמצא בקטלוג ב
              • ואז להעתיק את התוצאה של הסינון ולהדביק אותה לסוף קטלוג ב

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

              📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

              תגובה 1 תגובה אחרונה
              1

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

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

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