סינון נתונים בנוסחאות של DAX

חשוב: מאמר זה תורגם בתרגום מכונה, ראה כתב ויתור. תוכל למצוא את הגרסה באנגלית של המאמר כאן לעיונך.

סעיף זה מתאר את אופן היצירה של מסננים בתוך נוסחאות Data Analysis Expressions (DAX). באפשרותך ליצור מסננים בתוך נוסחאות, כדי להגביל את הערכים ממקור הנתונים המשמשים בחישובים. ניתן לעשות זאת על-ידי ציון טבלה כקלט לנוסחה והגדרת ביטוי מסנן. ביטוי המסנן שאתה מספק משמשת שאילתה על נתוני ולחזור רק קבוצת משנה של נתוני המקור. החלת המסנן באופן דינאמי בכל פעם שתעדכן את התוצאות של הנוסחה, בהתאם להקשר הנוכחי של הנתונים שלך.

במאמר זה

יצירת מסנן בטבלה המשמשת בנוסחה

מסננים שמסירים ערכים כפולים

כיצד ההקשר משפיע על מסננים

הסרת מסננים

עקיפת כל המסננים בפונקציה ALL

עקיפת מסננים ספציפיים באמצעות הפונקציה ALLEXCEPT

יצירת מסנן בטבלה המשמשת בנוסחה

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

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

= SUMX (
FILTER ('ResellerSales_USD', 'ResellerSales_USD' [Quantity] > 5 & &
'ResellerSales_USD' [ProductStandardCost_USD] > 100),
'ResellerSales_USD' [SalesAmt]
)

  • החלק הראשון של הנוסחה מציין אחת מפונקציות הצבירה Power Pivot, אשר מקבלת טבלה כארגומנט. SUMX מחשבת את סכום מעל טבלה.

  • החלק השני של הנוסחה, FILTER(table, expression),מורה SUMX אילו הנתונים שבהם יש להשתמש. SUMX דורש טבלה או ביטוי שתוצאתו טבלה. כאן, במקום להשתמש כל הנתונים בטבלה, תשתמש בפונקציה FILTER כדי לציין אילו שורות מהטבלה נמצאות בשימוש.

    שני חלקים החלות על הביטוי filter: החלק הראשון של שמות הטבלה שאליה מחיל המסנן. החלק השני מגדיר ביטוי שישמש תנאי הסינון. במקרה זה, אתה מסנן על המתקינים שנמכרו יותר מ- 5 יחידות ובמוצרים עלות יותר מ- $100. האופרטור, & &, הוא אופרטור AND לוגי, המציינת כי חייבים להיות true עבור השורה ישתייך קבוצת המשנה המסוננת בשני החלקים של התנאי.

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

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

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

מסננים שמסירים ערכים כפולים

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

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

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

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

=COUNTROWS(DISTINCT('ResellerSales_USD'[ProductKey]))

לראש הדף

כיצד ההקשר משפיע על מסננים

בעת הוספת נוסחת DAX PivotTable או PivotChart, תוצאות הנוסחה עשויים להיות מושפעים לפי ההקשר. אם אתה עובד בטבלה Power Pivot, מההקשר היא השורה הנוכחית והעמודה הערכים שלה. אם אתה עובד ב- PivotTable או PivotChart, מההקשר פירושו קבוצה או קבוצת משנה של נתונים המוגדר על-ידי פעולות כגון פרוסות או סינון. העיצוב של ה-PivotTable או PivotChart הגובה גם הקשר משלו. לדוגמה, אם אתה יוצר PivotTable המקבץ מכירות לפי אזור ולפי year, רק את הנתונים המתאים אזורים ושנים אלה מופיע ב- PivotTable. לכן כל מידות שאתה מוסיף ל- PivotTable מחושבות בהקשר של כותרות עמודה ושורה יחד עם כל המסננים בנוסחה מידה.

לקבלת מידע נוסף, ראה ההקשר בנוסחאות DAX.

לראש הדף

הסרת מסננים

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

עקיפת כל המסננים בפונקציה ALL

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

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

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

= SUM (Sales [Amount]) / SUMX (Sales [Amount], מסנן (Sales, ALL(Products)))

  • החלק הראשון של הנוסחה, SUM (Sales[Amount]), מחשב את המונה.

  • הסכום מביא בחשבון את ההקשר הנוכחי, כלומר אם תוסיף את הנוסחה לעמודה מחושבת, הקשר השורה יוחל, ואם תוסיף את הנוסחה ל- PivotTable כמדיד, כל המסננים שהוחלו ב- PivotTable (הקשר המסנן) יוחלו.

  • החלק השני של הנוסחה, מחשב המכנה. הפונקציה ALL עקיפת מסננים עשויים לחול על הטבלה Products .

לקבלת מידע נוסף, כולל דוגמאות מפורטות, ראה הפונקציה ALL.

עקיפת מסננים ספציפיים באמצעות הפונקציה ALLEXCEPT

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

לראש הדף

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

הרחב את הכישורים שלך
סייר בהדרכה
קבל תכונות חדשות לפני כולם
הצטרף למשתתפי Office Insider

האם מידע זה היה שימושי?

תודה על המשוב!

תודה על המשוב! נראה שכדאי לקשר אותך לאחד מנציגי התמיכה של Office.

×