เมื่อเรียนรู้วิธีใช้ Power Pivot เป็นครั้งแรก ผู้ใช้ส่วนใหญ่จะพบว่าพลังงานจริงอยู่ในการรวมหรือการคํานวณผลลัพธ์ในบางวิธี ถ้าข้อมูลของคุณมีคอลัมน์ที่มีค่าตัวเลข คุณสามารถรวมได้โดยการเลือกคอลัมน์ใน PivotTable หรือรายการเขตข้อมูล Power View ตามธรรมชาติ เนื่องจากเป็นตัวเลข ค่าเฉลี่ย การนับ หรือการรวมชนิดใดก็ตามที่คุณเลือกโดยอัตโนมัติ วิธีนี้เรียกว่ามาตรการโดยนัย มาตรการโดยนัยนั้นยอดเยี่ยมสําหรับการรวมที่รวดเร็วและง่ายดาย แต่มีขีดจํากัดและขีดจํากัดเหล่านั้นมักจะสามารถเอาชนะได้ด้วย มาตรการ และ คอลัมน์จากการคํานวณที่ชัดเจน
ก่อนอื่นมาดูที่ตัวอย่างที่เราใช้คอลัมน์จากการคํานวณเพื่อเพิ่มค่าข้อความใหม่สําหรับแต่ละแถวในตารางที่ชื่อ ผลิตภัณฑ์ แต่ละแถวในตารางผลิตภัณฑ์ประกอบด้วยข้อมูลทุกประเภทเกี่ยวกับแต่ละผลิตภัณฑ์ที่เราขาย เรามีคอลัมน์สําหรับชื่อผลิตภัณฑ์, สี, ขนาด, ตัวแทนจําหน่ายราคา, ฯลฯของ เรามีตารางที่เกี่ยวข้องอีกตารางหนึ่งที่ชื่อว่า ประเภทผลิตภัณฑ์ ที่มีคอลัมน์ ProductCategoryName สิ่งที่เราต้องการคือสําหรับแต่ละผลิตภัณฑ์ในตารางผลิตภัณฑ์เพื่อรวมชื่อประเภทผลิตภัณฑ์จากตารางประเภทผลิตภัณฑ์ ในตารางผลิตภัณฑ์ของเรา เราสามารถสร้างคอลัมน์จากการคํานวณที่ชื่อว่า ประเภทผลิตภัณฑ์ ดังนี้:
สูตรประเภทผลิตภัณฑ์ใหม่ของเราใช้ฟังก์ชัน RELATED DAX เพื่อรับค่าจากคอลัมน์ ProductCategoryName ในตารางประเภทผลิตภัณฑ์ที่เกี่ยวข้อง แล้วใส่ค่าเหล่านั้นสําหรับแต่ละผลิตภัณฑ์ (แต่ละแถว) ในตารางผลิตภัณฑ์
นี่คือตัวอย่างที่ยอดเยี่ยมของวิธีที่เราสามารถใช้คอลัมน์จากการคํานวณเพื่อเพิ่มค่าคงที่สําหรับแต่ละแถวที่เราสามารถใช้ในภายหลังในพื้นที่แถว คอลัมน์ หรือตัวกรองของ PivotTable หรือในรายงาน Power View
ลองสร้างอีกตัวอย่างหนึ่งที่เราต้องการคํานวณกําไรสําหรับหมวดหมู่ผลิตภัณฑ์ของเรา นี่เป็นสถานการณ์ทั่วไปแม้ในบทช่วยสอนมากมาย เรามีตารางยอดขายในตัวแบบข้อมูลของเราที่มีข้อมูลธุรกรรม และมีความสัมพันธ์ระหว่างตารางยอดขายและตารางประเภทผลิตภัณฑ์ ในตารางยอดขาย เรามีคอลัมน์ที่มียอดขาย และอีกคอลัมน์หนึ่งมีต้นทุน
เราสามารถสร้างคอลัมน์จากการคํานวณที่คํานวณยอดกําไรสําหรับแต่ละแถวโดยลบค่าในคอลัมน์ COGS จากค่าในคอลัมน์ SalesAmount ดังนี้:
ในตอนนี้ เราสามารถสร้าง PivotTable และลากเขตข้อมูล ประเภทผลิตภัณฑ์ ไปยัง คอลัมน์ และเขตข้อมูล ผลกําไร ใหม่ของเราลงในพื้นที่ ค่า (คอลัมน์ในตารางใน PowerPivot คือ เขตข้อมูล ในรายการเขตข้อมูล PivotTable) ผลลัพธ์ที่ได้คือการวัดโดยนัยที่ชื่อว่า ผลรวมของกําไร เป็นจํานวนรวมของค่าจากคอลัมน์กําไรสําหรับแต่ละประเภทผลิตภัณฑ์ที่แตกต่างกัน ผลลัพธ์ของเรามีลักษณะดังนี้:
ในกรณีนี้ กําไรจะเหมาะสมกับเขตข้อมูลใน VALUES เท่านั้น ถ้าเราต้องใส่ กําไร ในพื้นที่ คอลัมน์ PivotTable ของเราจะมีลักษณะดังนี้:
เขตข้อมูล Profit ของเราไม่ได้ให้ข้อมูลที่เป็นประโยชน์เมื่อวางไว้ในพื้นที่คอลัมน์ แถว หรือตัวกรอง ซึ่งเหมาะสมที่จะเป็นค่ารวมในพื้นที่ค่าเท่านั้น
สิ่งที่เราทําคือสร้างคอลัมน์ที่ชื่อ กําไร ที่คํานวณกําไรสําหรับแต่ละแถวในตารางยอดขาย จากนั้นเราจะเพิ่ม กําไร ลงในพื้นที่ ค่า ของ PivotTable ของเรา โดยสร้างการวัดโดยนัยโดยอัตโนมัติ ซึ่งผลลัพธ์จะถูกคํานวณสําหรับแต่ละประเภทผลิตภัณฑ์ หากคุณคิดว่าเราคํานวณกําไรสําหรับหมวดหมู่ผลิตภัณฑ์ของเราสองครั้งคุณถูกต้อง ก่อนอื่นเราจะคํานวณกําไรสําหรับแต่ละแถวในตารางยอดขาย จากนั้นเราจะเพิ่ม กําไร ลงในพื้นที่ ค่า ที่มันถูกรวมสําหรับผลิตภัณฑ์แต่ละประเภท หากคุณกําลังคิดว่าเราไม่จําเป็นต้องสร้างคอลัมน์จากการคํานวณกําไรคุณถูกต้องเช่นกัน แต่เราจะคํานวณกําไรของเราโดยไม่ต้องสร้างคอลัมน์คํานวณกําไรได้อย่างไร
กําไรจะดีกว่าการคํานวณเป็นมาตรการที่ชัดเจน
สําหรับตอนนี้ เราจะออกจากคอลัมน์จากการคํานวณกําไรของเราในตารางยอดขายและประเภทผลิตภัณฑ์ใน คอลัมน์ และ กําไรในค่าของ PivotTable ของเรา เพื่อเปรียบเทียบผลลัพธ์ของเรา
ในพื้นที่การคํานวณของตารางยอดขายของเรา เราจะสร้างหน่วยวัดที่ชื่อ Total Profit(เพื่อหลีกเลี่ยงข้อขัดแย้งในการตั้งชื่อ) ในที่สุดมันจะให้ผลลัพธ์เหมือนกับที่เราทําก่อนหน้านี้ แต่ไม่มีคอลัมน์คํานวณผลกําไร
ก่อนอื่น ในตาราง ยอดขาย เราเลือกคอลัมน์ SalesAmount แล้วคลิก ผลรวมอัตโนมัติ เพื่อสร้าง ผลรวมของยอดขายอย่างชัดแจ้ง โปรดจําไว้ว่าการวัดที่ชัดเจนคือการวัดที่เราสร้างขึ้นในพื้นที่การคํานวณของตารางใน Power Pivot เราทําเช่นเดียวกันสําหรับคอลัมน์ COGS เราจะเปลี่ยนชื่อ Total SalesAmount และ Total COGS เหล่านี้เพื่อให้ง่ายต่อการระบุ
จากนั้นเราจะสร้างการวัดอื่นด้วยสูตรนี้:
กําไรรวม:=[ Total SalesAmount] - [Total COGS]
หมายเหตุ: นอกจากนี้ เรายังสามารถเขียนสูตรของเราเป็น Total Profit:=SUM([SalesAmount]) - SUM([COGS]) แต่โดยการสร้างหน่วยวัด Total SalesAmount และ Total COGS แยกต่างหาก เราสามารถใช้ใน PivotTable ของเราได้ด้วย และเราสามารถใช้เป็นอาร์กิวเมนต์ในสูตรการวัดอื่นๆ ได้ทุกประเภท
หลังจากเปลี่ยนรูปแบบการวัดผลกําไรทั้งหมดเป็นสกุลเงินแล้ว เราสามารถเพิ่มลงใน PivotTable ของเราได้
คุณสามารถดูหน่วยวัด Total Profit ใหม่ของเราส่งกลับผลลัพธ์เดียวกันกับการสร้างคอลัมน์จากการคํานวณกําไร แล้ววางไว้ใน VALUES ความแตกต่างคือการวัดผลกําไรทั้งหมดของเรามีประสิทธิภาพมากขึ้นและทําให้ตัวแบบข้อมูลของเราสะอาดขึ้นและมีประสิทธิภาพมากขึ้นเนื่องจากเรากําลังคํานวณตามเวลาและเฉพาะเขตข้อมูลที่เราเลือกสําหรับ PivotTable ของเราเท่านั้น เราไม่ต้องการคอลัมน์ที่คํานวณกําไรจริงๆ
เหตุใดส่วนสุดท้ายนี้จึงสําคัญ คอลัมน์จากการคํานวณจะเพิ่มข้อมูลลงในตัวแบบข้อมูล และข้อมูลจะใช้หน่วยความจํา ถ้าเรารีเฟรชตัวแบบข้อมูล จําเป็นต้องใช้ทรัพยากรการประมวลผลเพื่อคํานวณค่าทั้งหมดในคอลัมน์ กําไร อีกครั้ง เราไม่จําเป็นต้องใช้ทรัพยากรเช่นนี้เนื่องจากเราต้องการคํานวณกําไรของเราเมื่อเราเลือกเขตข้อมูลที่เราต้องการกําไรใน PivotTable เช่น ประเภทผลิตภัณฑ์ ภูมิภาค หรือตามวันที่
มาดูตัวอย่างอื่นกัน คอลัมน์จากการคํานวณจะสร้างผลลัพธ์ที่ดูถูกต้องในตอนแรก...
ในตัวอย่างนี้ เราต้องการคํานวณยอดขายเป็นเปอร์เซ็นต์ของยอดขายรวม เราสร้างคอลัมน์จากการคํานวณที่ชื่อ % ของยอดขาย ในตารางยอดขายของเรา ดังนี้:
สูตรของเราระบุว่า: สําหรับแต่ละแถวในตารางยอดขาย ให้หารจํานวนในคอลัมน์ SalesAmount ด้วยผลรวม SUM ของจํานวนทั้งหมดในคอลัมน์ SalesAmount
ถ้าเราสร้าง PivotTable และเพิ่มประเภทผลิตภัณฑ์ลงใน คอลัมน์ และเลือกคอลัมน์ % ยอดขาย ใหม่ของเราเพื่อใส่ลงใน VALUES เราจะได้ผลรวมของ % ของยอดขายสําหรับแต่ละประเภทผลิตภัณฑ์ของเรา
ตกลง, ได้ นี่ดูดีจังเลย แต่มาเพิ่มตัวแบ่งส่วนข้อมูลกัน เราเพิ่มปีปฏิทิน แล้วเลือกหนึ่งปี ในกรณีนี้ เราเลือกปี 2007 นี่คือสิ่งที่เราได้รับ
ในตอนแรก นี่อาจยังคงปรากฏอย่างถูกต้อง แต่เปอร์เซ็นต์ของเราควรจะรวมทั้งหมด 100% เนื่องจากเราต้องการทราบเปอร์เซ็นต์ของยอดขายทั้งหมดสําหรับแต่ละหมวดหมู่ผลิตภัณฑ์ของเราสําหรับปี 2007 แล้วมีอะไรผิดพลาดบ้าง
คอลัมน์ % ของยอดขายของเราคํานวณเปอร์เซ็นต์สําหรับแต่ละแถวที่เป็นค่าในคอลัมน์ SalesAmount หารด้วยผลรวมของค่าทั้งหมดในคอลัมน์ SalesAmount ค่าในคอลัมน์จากการคํานวณได้รับการแก้ไขแล้ว แถวเหล่านี้เป็นผลลัพธ์ที่ไม่เปลี่ยนแปลงสําหรับแต่ละแถวในตาราง เมื่อเราเพิ่ม % ของยอดขาย ลงใน PivotTable ของเรา ค่านั้นจะถูกรวมเป็นผลรวมของค่าทั้งหมดในคอลัมน์ SalesAmount ผลรวมของค่าทั้งหมดในคอลัมน์ % ของยอดขายจะเป็น 100% เสมอ
เคล็ดลับ: ตรวจสอบให้แน่ใจว่าได้อ่าน บริบทในสูตร DAX แล้ว ซึ่งให้ความเข้าใจที่ดีเกี่ยวกับบริบทระดับแถวและบริบทตัวกรอง ซึ่งเป็นสิ่งที่เรากําลังอธิบายที่นี่
เราสามารถลบคอลัมน์ % ของยอดขายจากการคํานวณเนื่องจากคอลัมน์นี้ไม่สามารถช่วยเราได้ แต่เราจะสร้างการวัดที่คํานวณเปอร์เซ็นต์ของยอดขายทั้งหมดของเราได้อย่างถูกต้องโดยไม่คํานึงถึงตัวกรองหรือตัวแบ่งส่วนข้อมูลที่ใช้
จําการวัด TotalSalesAmount ที่เราสร้างไว้ก่อนหน้านี้ได้หรือไม่ หน่วยวัดที่เพียงแค่รวมคอลัมน์ SalesAmount เราใช้เป็นอาร์กิวเมนต์ในการวัดผลกําไรรวมของเรา และเราจะใช้อีกครั้งเป็นอาร์กิวเมนต์ในเขตข้อมูลจากการคํานวณใหม่ของเรา
เคล็ดลับ: การสร้างการวัดที่ชัดเจน เช่น Total SalesAmount และ Total COGS ไม่เพียงแต่มีประโยชน์ใน PivotTable หรือรายงานเท่านั้น แต่ยังมีประโยชน์เป็นอาร์กิวเมนต์ในการวัดอื่นๆ เมื่อคุณต้องการผลลัพธ์เป็นอาร์กิวเมนต์ ซึ่งทําให้สูตรของคุณมีประสิทธิภาพและอ่านได้ง่ายขึ้น นี่คือแนวทางปฏิบัติในการสร้างตัวแบบข้อมูลที่ดี
เราสร้างการวัดใหม่ด้วยสูตรต่อไปนี้:
% ของ Total Sales:=([Total SalesAmount]) / CALCULATE([Total SalesAmount], ALLSELECTED())
สูตรนี้ระบุ: หารผลลัพธ์จาก Total SalesAmount ด้วยผลรวมของ SalesAmount โดยไม่มีตัวกรองคอลัมน์หรือแถวใดๆ นอกเหนือจากตัวกรองที่กําหนดไว้ใน PivotTable
เคล็ดลับ: ตรวจสอบให้แน่ใจว่าได้อ่านเกี่ยวกับฟังก์ชัน CALCULATE และ ALLSELECTED ในการอ้างอิง DAX แล้ว
ในตอนนี้ ถ้าเราเพิ่ม % ของยอดขายรวม ของเราลงใน PivotTable เราได้รับ:
ดูดีขึ้นนะ ขณะนี้ % ของยอดขายรวม สําหรับแต่ละประเภทผลิตภัณฑ์จะถูกคํานวณเป็นเปอร์เซ็นต์ของยอดขายรวมสําหรับปี 2007 หากเราเลือกปีอื่นหรือมากกว่าหนึ่งปีในตัวแบ่งส่วนข้อมูลปฏิทินปีเราจะได้รับเปอร์เซ็นต์ใหม่สําหรับหมวดหมู่ผลิตภัณฑ์ของเรา แต่ผลรวมทั้งหมดของเรายังคงเป็น 100% เราสามารถเพิ่มตัวแบ่งส่วนข้อมูลและตัวกรองอื่นๆ ได้ด้วย % ของการวัดยอดขายรวมของเราจะสร้างเปอร์เซ็นต์ของยอดขายทั้งหมดโดยไม่คํานึงถึงตัวแบ่งส่วนข้อมูลหรือตัวกรองที่ใช้ ด้วยการวัด ผลลัพธ์จะถูกคํานวณตามบริบทที่กําหนดโดยเขตข้อมูลใน COLUMNS และ ROWS เสมอ และด้วยตัวกรองหรือตัวแบ่งส่วนข้อมูลใดๆ ที่ถูกนําไปใช้ นี่คือพลังของมาตรการ
ต่อไปนี้เป็นแนวทางบางส่วนที่จะช่วยคุณในการตัดสินใจว่าคอลัมน์จากการคํานวณหรือหน่วยวัดเหมาะสมกับความต้องการในการคํานวณที่เฉพาะเจาะจงหรือไม่:
ใช้คอลัมน์จากการคํานวณ
-
ถ้าคุณต้องการให้ข้อมูลใหม่ของคุณปรากฏบนแถว คอลัมน์ หรือใน ตัวกรอง ใน PivotTable หรือบนแกน คําอธิบาย แผนภูมิ หรือ ไทล์โดย ในการแสดงภาพของ Power View คุณต้องใช้คอลัมน์จากการคํานวณ เช่นเดียวกับคอลัมน์ทั่วไปของข้อมูล คอลัมน์จากการคํานวณสามารถใช้เป็นเขตข้อมูลในพื้นที่ใดก็ได้ และถ้าคอลัมน์เหล่านั้นเป็นตัวเลขคอลัมน์เหล่านั้นก็สามารถถูกรวมเป็นค่าได้เช่นกัน
-
ถ้าคุณต้องการให้ข้อมูลใหม่ของคุณเป็นค่าคงที่สําหรับแถว ตัวอย่างเช่น คุณมีตารางวันที่ที่มีคอลัมน์ของวันที่ และคุณต้องการคอลัมน์อื่นที่มีเฉพาะตัวเลขของเดือน คุณสามารถสร้างคอลัมน์จากการคํานวณที่คํานวณเฉพาะตัวเลขเดือนจากวันที่ในคอลัมน์วันที่ ตัวอย่างเช่น =MONTH('Date'[Date])
-
ถ้าคุณต้องการเพิ่มค่าข้อความสําหรับแต่ละแถวลงในตาราง ให้ใช้คอลัมน์จากการคํานวณ เขตข้อมูลที่มีค่าข้อความไม่สามารถรวมเป็น VALUES ได้ ตัวอย่างเช่น =FORMAT('Date'[Date],"mmmm") ให้ชื่อเดือนสําหรับวันที่แต่ละวันที่ในคอลัมน์ วันที่ ในตาราง วันที่
ใช้หน่วยวัด
-
ถ้าผลลัพธ์ของการคํานวณของคุณจะขึ้นอยู่กับเขตข้อมูลอื่นๆ ที่คุณเลือกใน PivotTable เสมอ
-
ถ้าคุณจําเป็นต้องทําการคํานวณที่ซับซ้อนมากขึ้น เช่น คํานวณจํานวนโดยยึดตามตัวกรองการเรียงลําดับบางอย่าง หรือคํานวณปีต่อปี หรือค่าความแปรปรวน ให้ใช้เขตข้อมูลจากการคํานวณ
-
ถ้าคุณต้องการให้เวิร์กบุ๊กของคุณมีขนาดต่ําสุดและเพิ่มประสิทธิภาพสูงสุด ให้สร้างการคํานวณของคุณให้มากที่สุดเท่าที่จะเป็นไปได้ ในหลายกรณี การคํานวณทั้งหมดของคุณอาจเป็นการวัดลดขนาดเวิร์กบุ๊กลงอย่างมากและเพิ่มความเร็วในการรีเฟรช
โปรดทราบว่าการสร้างคอลัมน์จากการคํานวณเหมือนกับที่เราทํากับคอลัมน์กําไรของเรานั้นไม่มีอะไรผิดปกติ แล้วรวมไว้ใน PivotTable หรือรายงาน จริงๆแล้วเป็นวิธีที่ดีและง่ายในการเรียนรู้และสร้างการคํานวณของคุณเอง เมื่อความเข้าใจของคุณเกี่ยวกับฟีเจอร์ที่มีประสิทธิภาพสูงทั้งสองอย่างของ Power Pivot เพิ่มขึ้น คุณจะต้องสร้างตัวแบบข้อมูลที่มีประสิทธิภาพและแม่นยําที่สุดเท่าที่จะทําได้ หวังว่าสิ่งที่คุณเรียนรู้ที่นี่จะช่วยได้ มีแหล่งข้อมูลที่ยอดเยี่ยมอื่น ๆ ที่สามารถช่วยคุณได้เช่นกัน ต่อไปนี้เป็นเพียงบางส่วน: บริบทในสูตร DAXการรวมใน Power Pivot และศูนย์ทรัพยากร DAX ในขณะที่เป็นขั้นตอนที่ล้ําหน้ากว่าเล็กน้อย และมุ่งตรงไปยังผู้เชี่ยวชาญด้านบัญชีและการเงิน การสร้างตัวแบบและการวิเคราะห์ข้อมูลกําไรและขาดทุนด้วยตัวอย่าง Microsoft Power Pivot ใน Excel จะโหลดพร้อมการสร้างตัวแบบข้อมูลและตัวอย่างสูตรที่ยอดเยี่ยม