FILTER באקסל 365 על פי שני ערכים באותה העמודה
הפונקציה FILTER באקסל 365 היא אחת הפונקציות החדשות והמגוונות ביותר:
היא מחליפה ביעילות סינונים, VLOOKUP/XLOOKUP, יכולה להחזיר תוצאות מרובות עבור אותה תוצאת חיפוש, ועוד.
במאמר הזה למדנו על הפונקציה
כאן למדנו כיצד לפלטר על פי שתי עמודות, כאשר התנאי הוא 'וגם'
וכאן למדנו כיצד לפלטר על פי שתי עמודות, כאשר התנאי הוא 'או'
ואם תבדקו בדף המאמרים שלי בנושא אקסל 365, תוכלו למצוא עוד מאמרים שעוסקים בפונקציה FILTER
ועכשיו נלמד כיצד לפלטר על פי שני ערכים שנמצאים באותה העמודה!
אז מה יש לנו?
טבלת נתונים בשם CallsTbl שמכילה קריאות של לקוחות, בסטטוסים שונים:
שני שדות סינון לאותה העמודה (סטטוס), שנמצאים בתאים K5:K6:
את האפשרויות הקיימות בתא יצרתי באמצעות אימות נתונים, המבוסס על רשימה ייחודית (UNIQUE) של הסטטוסים,
כפי שהסברתי במאמרים אליהם קישרתי בראש העמוד
מה אנחנו מבקשים:
לבחור שני קריטריונים לסינון, שנמצאים באותה העמודה, לדוגמה – את כל הקריאות שהסטטוס שלהן הוא פתוח או שהועברו לתומך בכיר.
כך היינו עושים זאת ללא הפונקציה:
וזו התוצאה:
אבל אנחנו מעוניינים לעשות זאת עם פונקציה, ולא עם סינון על הטבלה עצמה.
היתרון בשימוש בפונקציה הוא שהיא דינמית, ותשתנה בהתאם לשינוי בנתונים.
בנוסף, את תוצאות הפונקציה נוכל להציג בגיליון אחר, או בדשבורד שיצרנו, בלי לחשוף את כל טבלת הנתונים.
אז איך עושים את זה
ראשית, אני מזכירה לכם את הלוגיקה של הפונקציה –
היא מאתרת בתוך הטבלה רשומות שעונות על התנאי, כלומר – מחפשות תוצאה של TRUE.
הסבר מעמיק יותר תמצאו במאמר הזה
אז כאשר מדובר בתנאי אחד בלבד, קל לנו לבדוק האם מדובר באמת או בשקר, אבל איך עושים את זה עם שני תנאים על אותה העמודה?
נעבוד בשלבים…
ראשית, אראה לכם כיצד נוכל לקבל רשימה של אמת או שקר עבור כל שורות הטבלה.
במקרה שלנו – אני מעוניינת לקבל ערך TRUE או 1, עבור רשומות בטבלה שהתנאי מתקיים – אלה השורות שיוצגו בטבלה הסופית,
ו FALSE או 0, עבור רשומות שבהן התנאי לא מתקיים – אלה השורות שלא יוצגו בטבלה הסופית.
הדרך הפשוטה היא להשתמש ב COUNTIF:
=COUNTIF(K5:K6,CallsTbl[סטטוס שיחה])
כלומר – אנחנו רוצים לדעת כמה פעמים המידע שנמצא בתאי העזר K5:K6, מופיע בטבלת הנתונים.
זו התוצאה שקיבלנו:
עבור כל שורה שבה הסטטוס הוא 'הועברה לתומך בכיר' או 'פתוח' קיבלנו את הערך 1, ועבור הסטטוסים האחרים, קיבלנו את הערך 0
עכשיו זה כבר פשוט
הלוגיקה קיימת, וכל מה שצריך זה להכניס אותה לתוך פונקציית FILTER:
=FILTER(CallsTbl, COUNTIF(K5:K6,CallsTbl[סטטוס שיחה]))
כלומר – אל תוך הפונקציה FILTER הכנסנו את טבלת הנתונים CallsTbl,
ועבור התנאי הלוגי השתמשנו ב COUNTIF שהחזיר לנו ערכי TRUE ו-FALSE,
ובעצם סימן לאקסל אילו שורות לקחת ומאילו להתעלם,
וזו התוצאה שהתקבלה:
אם נשנה עכשיו את הסטטוסים ל'סגור' ו'שיחה שננטשה', התוצאה תשתנה בהתאם:
כאן תוכלו ללמוד עוד על הפונקציה UNIQUE
מעוניינים ללמוד בקורס על פונקציות המערך החדשות?
צרו קשר כאן ואחזור אליכם בהקדם