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

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

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

אקסל - פיצול חכם של טקסט לעמודות

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

    יש לי עמודת נתונים באקסל עם מספר נתונים בכל תא
    אני רוצה לפצל אותם לעמודות נפרדות

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

    מצורף תמונה של עמודת המקור ולאחריו הפיצול שאקסל עשה:
    e70eb546-6c3e-4e54-bdf9-863a9239736b-image.png

    ואני רוצה להגיע לתוצאה כזאת:
    50e8d0b9-54d4-42bb-b579-02ff93d324fc-image.png

    בעצם במקום להתחיל את הפיצול מימין לשמאל שיתחיל משמאל לימין

    אשמח לרעיונות
    תודה רבה!

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

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

      קבל שם משפחה ושם פרטי ונתיב ושם הקובץ.xls

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

        @מלא אמר באקסל - פיצול חכם של טקסט לעמודות:

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

        קבל שם משפחה ושם פרטי ונתיב ושם הקובץ.xls

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

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

        אני צריך שישים את הנתון האחרון (משפחה) בעמודה 3
        את הנתון השני (שם פרטי) בעמודה 2
        את הנתון הראשון (תואר - במקרה שקיים) בעמודה 1

        תודה רבה.

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

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

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

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

            עריכה:

            בעצם במקום להתחיל את הפיצול מימין לשמאל שיתחיל משמאל לימין

            זה רעיון נחמד, תוכל להפוך את המחרוזות, לפצל, ולהפוך בחזרה.
            הנה פונקציה ב-VBA (פתח מודל חדש ותדביק):

            Public Function ReversedString(s As String) As String
                ReversedString = StrReverse(Trim(s))
            End Function
            
            בערלב תגובה 1 תגובה אחרונה
            2
            • אורייא מנותק
              אורייא מנותק
              אוריי
              השיב לבערל ב נערך לאחרונה על ידי אוריי
              #6

              @בערל
              הנה תוצאה

              3ab22cc1-f45c-4f63-93aa-962a505df49e-image.png

              1. עמודה B סופרת את כמות המילים בטקסט
                זה הנוסחה
              =LEN(TRIM(A2))-LEN(SUBSTITUTE(A2," ",""))+1
              
              1. עמודה C מחזירה את הטקסט בתוספת "," לפני הטקסט לפי מס' המילים
                זה הנוסחה
              =IF(B2=2,","&A2,IF(B2=1,", ,"&A2,A2))
              

              ונשאר רק להפריד
              בהצלחה

              עריכה : כמובן שאתה יכול לחבר את שני העמודות לכדי נוסחה אחת
              כזו

              =IF(LEN(TRIM(A2))-LEN(SUBSTITUTE(A2," ",""))+1=2,","&A2,IF(LEN(TRIM(A2))-LEN(SUBSTITUTE(A2," ",""))+1=1,", ,"&A2,A2))
              

              ניתן לפנות אלי גם ב al0548446188@gmail.com
              ותמיד... אבל תמיד תוכלו לשאול אותי ב :) כאן שאלות באקסל

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

                @מלא אמר באקסל - פיצול חכם של טקסט לעמודות:

                האם התוארים קבועים? הרב, רבי, הגאון
                כי אם כן, תוכל להשתמש עם הפונקציות שבקובץ הנ"ל

                התארים אינם קבועים, אפי' לא חוזרים על עצמם.







                @אוריי אמר באקסל - פיצול חכם של טקסט לעמודות:

                @בערל
                הנה תוצאה

                1. עמודה B סופרת את כמות המילים בטקסט
                  זה הנוסחה
                =LEN(TRIM(A2))-LEN(SUBSTITUTE(A2," ",""))+1
                
                1. עמודה C מחזירה את הטקסט בתוספת "," לפני הטקסט לפי מס' המילים
                  זה הנוסחה
                =IF(B2=2,","&A2,IF(B2=1,", ,"&A2,A2))
                

                ונשאר רק להפריד
                בהצלחה

                עריכה : כמובן שאתה יכול לחבר את שני העמודות לכדי נוסחה אחת
                כזו

                =IF(LEN(TRIM(A2))-LEN(SUBSTITUTE(A2," ",""))+1=2,","&A2,IF(LEN(TRIM(A2))-LEN(SUBSTITUTE(A2," ",""))+1=1,", ,"&A2,A2))
                

                תודה רבה

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

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

                  @odeddvir אמר באקסל - פיצול חכם של טקסט לעמודות:

                  זה רעיון נחמד, תוכל להפוך את המחרוזות, לפצל, ולהפוך בחזרה.
                  הנה פונקציה ב-VBA (פתח מודל חדש ותדביק):

                  Public Function ReversedString(s As String) As String
                      ReversedString = StrReverse(Trim(s))
                  End Function
                  

                  גאוני.
                  עובד מעולה!

                  תודה רבה רבה לכולם
                  וסליחה על חוסר הבהירות בדוגמה.

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

                    @בערל , בזכותך עלה לי רעיון יותר פשוט!

                    תכתוב בעמודה B את הנוסחה הזו

                    =REPT(" ,",10-SUM(LEN(TRIM(A2))-LEN(SUBSTITUTE(A2," ","")))) &A2
                    

                    ואותו תפריד
                    תוכל תמיד לשחק עם כמות המילים בתוך הנוסחה

                    פשוט לשנות במס' 10 שיש בהתחלה לסך המילים המרבית שיש לך בטקסט

                    ניתן לפנות אלי גם ב al0548446188@gmail.com
                    ותמיד... אבל תמיד תוכלו לשאול אותי ב :) כאן שאלות באקסל

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

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

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

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