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

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

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

GOOGL SHEETS עזרה ביצירת פונקציה

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

    אני יוצר כעת נוסחה בעלת שם בגוגל שיטס.
    הנוסחה אמורה לסנן שורות לפי מערך מספרים נתון.
    (בעצם אפשרות להשתמש עם INDEX עם הרבה שורות)

    כלומר היא מקבלת 2 פרמטרים: מערך נתונים, מערך מספרים
    ומחזירה שורות מתוך המערך נתונים אם הם כתובות במערך המספרים.

    דוגמה (שעובדת אצלי כעת לאחר היצירה):

    =SELECT_ROWS({"A",2;3,"B";"C",6;7,"D"} , {2,3})
    

    והתוצאה היא

    3 | B
    C | 6
    

    אני מסתפק מבחינת מהירות ביצועים בין שלושה אפשרויות.
    (אני מביא את האפשרויות כביטויי LAMBDA שיעבוד בכל קובץ)

    אפשרות א

    =LAMBDA(MYARRAY,N_ROWS
    ,TRANSPOSE( QUERY({TRANSPOSE(MYARRAY)},"SELECT Col"& TEXTJOIN(", Col",TRUE,N_ROWS),0))
    )(E41:F44,{1,2,4})
    

    אפשרות ב (נראה לי אופטימלית יותר)

    =ArrayFormula(LAMBDA(MYARRAY,N_ROWS
    ,FILTER(MYARRAY,NOT(ISNA(MATCH(MAKEARRAY(ROWS(MYARRAY),1,LAMBDA(R,C,R)),N_ROWS,0))))
    )(E41:F44,{1,2,4}))
    

    אפשרות ג

    =ArrayFormula(LAMBDA(MYARRAY,N_ROWS
    ,SPLIT(BYROW(TRANSPOSE(N_ROWS),LAMBDA(MYVALUE,TEXTJOIN(CHAR(999),FALSE,INDEX(MYARRAY,MYVALUE)))),CHAR(999),TRUE,FALSE)
    )(E41:F44,{1,2,4}))
    

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

    Y.Excel.Access @ gmail.com

    Y.Excel.AccessY תגובה 1 תגובה אחרונה
    0
    • Y.Excel.AccessY מנותק
      Y.Excel.AccessY מנותק
      Y.Excel.Access
      השיב לY.Excel.Access ב נערך לאחרונה על ידי Y.Excel.Access
      #2

      @Y-Excel-Access כתב בGOOGL SHEETS עזרה ביצירת פונקציה:

      אפשרות ב (נראה לי אופטימלית יותר)

      =ArrayFormula(LAMBDA(MYARRAY,N_ROWS
      ,FILTER(MYARRAY,NOT(ISNA(MATCH(MAKEARRAY(ROWS(MYARRAY),1,LAMBDA(R,C,R)),N_ROWS,0))))
      )(E41:F44,{1,2,4}))
      
      

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

      כך שלאפשרות זו צריך תיקון / לבחור אפשרות אחרת.

      Y.Excel.Access @ gmail.com

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

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

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

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