פונקציה מותאמת אישית משתמשת בשפת הנוסחאות M, לוקחת ערכה של ערכי קלט ולאחר מכן מחזירה ערך פלט יחיד. אם יש לך לוגיקה שברצונך לעשות בה שימוש חוזר פעמים רבות או להחיל אותה ערכה של המרות על שאילתה או ערך אחרים, שקול ליצור פונקציה מותאמת אישית ולאחר מכן להפעיל את הפונקציה במקום ומתי. קיימות כמה דרכים ליצירת פונקציה מותאמת אישית:
-
השתמש בתיבת הדו עורך מתקדם כדי להוסיף הצהרת let משלך ולהתחיל מאפס.
-
השתמש בפקודה הפעל פונקציה מותאמת אישית.
-
קיימות דרכים נוספות ליצירת פונקציות שלא נדון בנושא עזרה זה, כולל הפקודות צור פונקציהוהוסף כשאילתה . לדיון מעמיק, ראה הבנת הפונקציות Power Query M (docs.com) והשימושבפונקציות מותאמות אישית (docs.com).
להלן דוגמה פשוטה של פונקציה מותאמת אישית העוקבת אחר מסורת תיכנות ארוכה.
-
כדי ליצור שאילתה ריקה:
בחירת נתונים ב > Excel לקבלת > ממקורות אחרים >ריקה. Power Query לחץ באמצעות לחצן העכבר הימני על מקום ריק בחלונית שאילתות מימין ולאחר מכן בחר שאילתה חדשה >מקורות >שאילתה ריקה. -
בחלונית שאילתות מימין, לחץ פעמיים על השם ולאחר מכן שנה את שם השאילתה הריקה החדשה ל- HelloWorld.
-
בחר את השאילתה החדשה ולאחר מכן בחר בית > מתקדם עורך.
-
החלף את קוד ההתחלה של התבנית בקוד הבא:
let HelloWorld = () => ("Hello World") in HelloWorld
-
בחר בצע.
-
שינית את השאילתה HelloWorld לפונקציה מותאמת אישית. שים לב
הסמל של הפונקציה מימין. -
כדי להפעיל את הפונקציה, בחר אותה ולאחר מכן בחר הפעל בתצוגה מקדימה של נתונים.
-
תוצאות הפונקציה מוצגות בתצוגה מקדימה של נתונים והן מתווספות לחלונית שאילתות כשאילתה עם שם ברירת המחדל , הפונקציה Invoked. ייתכן שתרצה לשנות את השם לשם בעל משמעות רבה יותר, כגון HelloWorldResult.
-
בחר שאילתה זו ולאחר מכן בחר בית> סגור & טען כדי לראות את התוצאות בגליון עבודה.
תוצאות
הדוגמה הבאה מראה כיצד להעביר פרמטר לפונקציה מותאמת אישית כדי להמיר מספר עשרוני למספר הקסדצימאלי.
-
כדי ליצור שאילתה ריקה:
בחירת נתונים ב > Excel לקבלת > ממקורות אחרים >ריקה. Power Query לחץ באמצעות לחצן העכבר הימני על מקום ריק בחלונית שאילתות מימין ולאחר מכן בחר שאילתה חדשה >מקורות >שאילתה ריקה. -
בחלונית שאילתות מימין, שנה את שם השאילתה הריקה החדשה ל- "MyHex".
-
בחר את השאילתה החדשה ולאחר מכן בחר בית > מתקדם עורך.
-
החלף את קוד ההתחלה של התבנית בקוד הבא:
let MyHex = (parameter1) => Number.ToText(parameter1,"X") in MyHex
-
בחר בצע.
-
שינית את השאילתה, "MyHex", לפונקציה מותאמת אישית. שים לב
הסמל של הפונקציה מימין. -
כדי להפעיל את הפונקציה, בחר אותה ולאחר מכן, בתצוגה מקדימה של נתונים, הזן מספר בתיבה פרמטר1 ובחר הפעל.
-
תוצאות הפונקציה מוצגות בתצוגה מקדימה של נתונים והן מתווספות לחלונית שאילתות כשאילתה עם שם ברירת המחדל, הפונקציה Invoked. ייתכן שתרצה לשנות את השם לשם בעל משמעות רבה יותר, כגון "MyHexResult".
-
בחר שאילתה זו ולאחר מכן בחר בית> סגור & טען כדי לראות את התוצאות בגליון עבודה.
תוצאות
אם יצרת פונקציה עם פרמטר אחד לפחות, באפשרותך להפעיל אותה כפונקציה מותאמת אישית כדי ליצור עמודה חדשה וערך חדש עבור כל שורה בטבלה.
-
כדי לפתוח שאילתה, אתר שאילתה שנטען בעבר עורך Power Query, בחר תא בנתונים ולאחר מכן בחר שאילתה > ערוך. לקבלת מידע נוסף, ראה יצירה, עריכה וטעינה של שאילתה ב- Excel (Power Query). הערה עבור דוגמה זו, לשאילתה שלך דרושה לפחות עמודה אחת מסוג הנתונים 'מספר שלם'.
-
צור את הפונקציה המותאמת אישית "MyHex" כפי שמוסבר בסעיף, צור והפעל פונקציה מותאמת אישית הכוללת פרמטר עם ההגדרה מתקדם עורך.
-
בשאילתה, בחר הוסף עמודה >פונקציה מותאמת אישית. תיבת הדו-שיח הפעלת פונקציה מותאמת אישית מופיעה.
-
הזן את שם העמודה החדשה, כגון "HexConvert", בתיבה שם עמודה חדשה.
-
בחר את השם של פונקציה מותאמת אישית מוגדרת מראש מהרשימה הנפתחת שאילתת פונקציה. בדוגמה זו, בחר "MyHex".
-
מאחר שהפונקציה המותאמת אישית מפנה לפרמטר, הפרמטר מוצג כעת.
-
בחר עמודה מסוג הנתונים 'מספר שלם ' כפרמטר עבור הפונקציה.
-
בחר אישור.
Result
נוצרת עמודה חדשה המציגה את הערך ההקסדצימאלי של העמודה 'מספר שלם' שהזנת בפרמטר.
למידע נוסף
עזרה עבור Power Query for Excel