คอลัมน์จากการคํานวณใน Power Pivot

นำไปใช้กับ
Excel for Microsoft 365 Excel 2024 Excel 2021

คอลัมน์จากการคํานวณจะช่วยให้คุณเพิ่มข้อมูลที่ได้รับลงในตารางในตัวแบบข้อมูลได้ แทนที่จะวางหรือนําเข้าค่าลงในคอลัมน์ คุณสามารถสร้าง Data Analysis Expressions (DAX) ในสูตร Power Pivot ที่กําหนดค่าคอลัมน์ได้

ตัวอย่างเช่น คุณอาจต้องการเพิ่มค่ากําไรจากยอดขายลงในแถวแต่ละแถวในตาราง FactSales โดยการเพิ่มคอลัมน์จากการคํานวณใหม่ และใช้สูตร = [SalesAmount] - [TotalCost] - [ReturnAmount] คํานวณค่าใหม่โดยการลบค่าจากแถวแต่ละแถวในคอลัมน์ TotalCost และ ReturnAmount จากค่าในแต่ละแถวของคอลัมน์ SalesAmount จากนั้นคุณสามารถใช้คอลัมน์กําไรใน PivotTable, PivotChart หรือการวิเคราะห์อื่นๆ ที่ใช้แบบจําลองข้อมูล

รูปนี้แสดงคอลัมน์ที่คํานวณใน Power Pivot

สกรีนช็อตที่แสดงคอลัมน์ที่ได้จากการคํานวณ

หมายเหตุ

แม้ว่าคอลัมน์จากการคํานวณและการวัดทั้งคู่จะอาศัยสูตร แต่ก็มีวัตถุประสงค์ที่แตกต่างกัน หน่วยวัดมักจะใช้ในพื้นที่ ค่า ของ PivotTable หรือ PivotChart ใช้คอลัมน์จากการคํานวณเมื่อคุณต้องการค่าจากการคํานวณที่จัดเก็บไว้สําหรับแต่ละแถว และพร้อมใช้งานเป็นเขตข้อมูลใน PivotTable, PivotChart, ตัวแบ่งส่วนข้อมูล, ตัวกรอง, แถว, คอลัมน์ หรือแกนแผนภูมิ สําหรับข้อมูลเพิ่มเติมเกี่ยวกับหน่วยวัด ให้ดูที่ หน่วยวัดใน Power Pivot

ทําความเข้าใจคอลัมน์จากการคํานวณ

สูตรในคอลัมน์จากการคํานวณจะเหมือนกับสูตรที่คุณสร้างใน Excel อย่างไรก็ตาม คุณไม่สามารถสร้างสูตรอื่นสําหรับแถวอื่นๆ ในตารางได้ สูตร DAX จะนําไปใช้กับทั้งคอลัมน์โดยอัตโนมัติ

เมื่อคอลัมน์มีสูตร คอลัมน์จะคํานวณค่าสําหรับแต่ละแถว ค่าในคอลัมน์จะถูกคํานวณทันทีหลังจากที่คุณใส่สูตร และจะถูกคํานวณใหม่เมื่อข้อมูลต้นแบบมีการเปลี่ยนแปลงหรือการคํานวณที่อ้างอิงถูกอัปเดต

คอลัมน์จากการคํานวณสามารถอ้างอิงคอลัมน์จากการคํานวณและการวัดอื่นๆ ในแบบจําลองข้อมูลเดียวกันได้ ตัวอย่างเช่น คุณอาจสร้างคอลัมน์จากการคํานวณหนึ่งคอลัมน์เพื่อแยกตัวเลขจากสตริงข้อความ แล้วใช้หมายเลขนั้นในคอลัมน์จากการคํานวณอื่น

ตัวอย่าง

คุณสามารถสร้างคอลัมน์จากการคํานวณโดยใช้ข้อมูลที่มีอยู่แล้วในตาราง ตัวอย่างเช่น คุณอาจเลือกที่จะต่อค่าต่างๆ ดําเนินการเพิ่ม แยกสตริงย่อย หรือเปรียบเทียบค่าในเขตข้อมูลอื่น เมื่อต้องการเพิ่มคอลัมน์จากการคํานวณ คุณควรมีตารางอย่างน้อยหนึ่งตารางใน Power Pivot

ตัวอย่างเช่น

= EOMONTH([StartDate], 0)

ในตัวอย่างต่อไปนี้ สูตรจะใช้ค่าจากคอลัมน์ วันที่เริ่มต้น ในตาราง โปรโมชั่น จากนั้นจะคํานวณค่าสิ้นเดือนสําหรับแต่ละแถวในตารางโปรโมชั่น พารามิเตอร์ที่สองระบุจํานวนเดือนก่อนหรือหลังเดือนใน StartDate ในกรณีนี้ 0 หมายถึงเดือนเดียวกัน ตัวอย่างเช่น ถ้าค่าในคอลัมน์ วันที่เริ่มต้น คือ 6/1/2001 ค่าในคอลัมน์จากการคํานวณจะเป็น 6/30/2001

การตั้งชื่อคอลัมน์จากการคํานวณ

ตามค่าเริ่มต้น คอลัมน์จากการคํานวณใหม่จะถูกเพิ่มทางด้านขวาของคอลัมน์อื่นๆ และคอลัมน์จะถูกกําหนดชื่อเริ่มต้นเป็น CalculatedColumn1,CalculatedColumn2 ไปโดยอัตโนมัติ หลังจากสร้างคอลัมน์ คุณสามารถจัดเรียงและเปลี่ยนชื่อคอลัมน์ได้ตามต้องการ

มีข้อจํากัดบางประการเกี่ยวกับการเปลี่ยนแปลงคอลัมน์จากการคํานวณ ดังนี้

  • ภายในตารางควรชื่อคอลัมน์แต่ละชื่อไม่ซ้ํากัน
  • หลีกเลี่ยงชื่อที่ใช้อยู่แล้วสําหรับการวัดภายในตัวแบบข้อมูลเดียวกัน เมื่อต้องการหลีกเลี่ยงความสับสน ให้ใช้ชื่อที่ไม่ซ้ํากันและการอ้างอิงคอลัมน์แบบเต็มเมื่ออ้างอิงถึงคอลัมน์
  • เมื่อเปลี่ยนชื่อคอลัมน์จากการคํานวณ คุณต้องอัปเดตสูตรใดๆ ที่ยึดตามคอลัมน์ที่มีอยู่ด้วย นอกจากว่าคุณอยู่ในโหมดการอัปเดตด้วยตนเอง การอัปเดตผลลัพธ์ของสูตรจะเกิดขึ้นโดยอัตโนมัติ อย่างไรก็ตาม การดําเนินการนี้อาจใช้เวลาสักครู่
  • คุณไม่สามารถใช้อักขระบางตัวในชื่อของคอลัมน์หรือในชื่อของวัตถุอื่นๆ ใน Power Pivot ได้ สําหรับข้อมูลเพิ่มเติม ให้ดูที่ "ข้อกําหนดในการตั้งชื่อ" ในไวยากรณ์ DAX

เมื่อต้องการเปลี่ยนชื่อหรือแก้ไขคอลัมน์จากการคํานวณที่มีอยู่

  1. ในหน้าต่าง Power Pivot ให้คลิกขวาที่ส่วนหัวของคอลัมน์จากการคํานวณที่คุณต้องการเปลี่ยนชื่อ แล้วคลิกเปลี่ยนชื่อคอลัมน์
  2. พิมพ์ชื่อใหม่ แล้วกด ENTER เพื่อยอมรับชื่อใหม่

การเปลี่ยนชนิดข้อมูล

คุณสามารถเปลี่ยนชนิดข้อมูลสําหรับคอลัมน์จากการคํานวณได้ในลักษณะเดียวกับที่คุณเปลี่ยนชนิดข้อมูลสําหรับคอลัมน์อื่นๆ การแปลงอาจล้มเหลวถ้าข้อมูลมีค่าที่เข้ากันไม่ได้

ประสิทธิภาพของคอลัมน์จากการคํานวณ

คอลัมน์จากการคํานวณอาจใช้ทรัพยากรมากกว่าการวัด เนื่องจากค่าของคอลัมน์เหล่านี้ถูกคํานวณและจัดเก็บไว้สําหรับทุกแถวในตาราง ในทางกลับกัน การวัดจะถูกคํานวณเฉพาะสําหรับเซลล์ที่ใช้ใน PivotTable หรือ PivotChart เท่านั้น

ตัวอย่างเช่น ตารางที่มีหนึ่งล้านแถวมักจะมีคอลัมน์จากการคํานวณที่มีผลลัพธ์หนึ่งล้านรายการ และผลที่สอดคล้องกันกับประสิทธิภาพการทํางาน อย่างไรก็ตาม โดยทั่วไปแล้ว PivotTable จะกรองข้อมูลโดยใช้ส่วนหัวของแถวและคอลัมน์ ซึ่งหมายความว่าการวัดจะถูกคํานวณเฉพาะสําหรับชุดย่อยของข้อมูลในแต่ละเซลล์ของ PivotTable

สูตรมีการขึ้นต่อกันกับการอ้างอิงวัตถุในสูตร เช่น คอลัมน์อื่นหรือนิพจน์อื่นที่ใช้ประเมินค่า ตัวอย่างเช่น คอลัมน์จากการคํานวณที่ยึดตามคอลัมน์อื่น หรือการคํานวณที่มีนิพจน์ที่มีการอ้างอิงคอลัมน์จะไม่สามารถประเมินได้จนกว่าคอลัมน์อื่นจะได้รับการประเมิน ตามค่าเริ่มต้น การรีเฟรชอัตโนมัติจะถูกเปิดใช้งาน โปรดทราบว่าการขึ้นต่อกันของสูตรอาจส่งผลต่อประสิทธิภาพการทํางาน

เพื่อหลีกเลี่ยงปัญหาประสิทธิภาพการทํางานเมื่อคุณสร้างคอลัมน์จากการคํานวณ ให้ทําตามคําแนะนําเหล่านี้

  • แทนที่จะสร้างสูตรเดียวที่มีการขึ้นต่อกันที่ซับซ้อนหลายรายการ ให้สร้างสูตรทีละขั้นตอน พร้อมบันทึกผลลัพธ์ไปยังคอลัมน์ เพื่อให้คุณสามารถตรวจสอบความถูกต้องของผลลัพธ์และประเมินการเปลี่ยนแปลงในประสิทธิภาพการทํางาน เมื่อเป็นไปได้ ให้พิจารณาใช้หน่วยวัดแทนคอลัมน์จากการคํานวณสําหรับการคํานวณที่ไม่จําเป็นต้องจัดเก็บไว้สําหรับทุกแถว
  • การปรับเปลี่ยนข้อมูลมักจะทําให้เกิดการอัปเดตคอลัมน์จากการคํานวณ คุณสามารถป้องกันลักษณะการทํางานนี้ได้โดยการตั้งค่าโหมดการคํานวณใหม่เป็นแบบด้วยตนเอง ถ้าตั้งค่าการคํานวณใหม่เป็นด้วยตนเอง ผลลัพธ์ของคอลัมน์จากการคํานวณอาจไม่แสดงการเปลี่ยนแปลงข้อมูลล่าสุดจนกว่าคุณจะรีเฟรชและคํานวณตัวแบบใหม่
  • ถ้าคุณเปลี่ยนแปลงหรือลบความสัมพันธ์ระหว่างตาราง สูตรที่ใช้คอลัมน์ในตารางเหล่านั้นจะไม่ถูกต้อง
  • ถ้าคุณสร้างสูตรที่มีการขึ้นต่อกันแบบวงกลมหรือการอ้างอิงตนเอง ข้อผิดพลาดจะเกิดขึ้น

งาน

สําหรับข้อมูลเพิ่มเติมเกี่ยวกับการทํางานกับคอลัมน์จากการคํานวณ ให้ดูที่ สร้างคอลัมน์จากการคํานวณใน Power Pivot