GENERATESERIES สร้างตารางคอลัมน์เดียวที่เป็นลำดับตัวเลขจาก StartValue ถึง EndValue ด้วย increment ที่กำหนดได้ เหมาะกับตารางช่วย parameter table หรือสร้างชุดตัวเลขสำหรับ what-if analysis
=GENERATESERIES(<StartValue>, <EndValue>[, <IncrementValue>])
=GENERATESERIES(<StartValue>, <EndValue>[, <IncrementValue>])
| Argument | Type | Required | Default | Description |
|---|---|---|---|---|
| StartValue | number | Yes | ค่าเริ่มต้นของลำดับ (จำนวนทั้งหมด) | |
| EndValue | number | Yes | ค่าสิ้นสุดของลำดับ (ต้องมากกว่า StartValue) | |
| IncrementValue | number | Optional | 1 | ขั้นเพิ่มค่าของลำดับ (ต้องเป็นบวก default = 1) |
เช่น ทำตาราง 1–100 เพื่อใช้เลือกค่าในรายงาน
เช่น สร้างค่า 0–1 แบบ step 0.1 เพื่อทำ bin หรือ threshold
Numbers 1-10 = GENERATESERIES(1, 10)Numbers 1-10 =
GENERATESERIES(1, 10)
ตารางที่มีคอลัมน์ Value: 1,2,3,4,5,6,7,8,9,10
Discount Parameter = GENERATESERIES(0, 50, 5)Discount Parameter =
GENERATESERIES(0, 50, 5)
ตารางตัวเลข 0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50
Rating Scale = GENERATESERIES(0.5, 5, 0.5)Rating Scale =
GENERATESERIES(0.5, 5, 0.5)
ตาราง 0.5, 1, 1.5, 2, 2.5, 3, 3.5, 4, 4.5, 5
Discount Table = ADDCOLUMNS( GENERATESERIES(0, 50, 5), "Discount Label", FORMAT([Value], "0%"), "Price Factor", (100 - [Value]) / 100 )Discount Table =
ADDCOLUMNS(
GENERATESERIES(0, 50, 5),
"Discount Label",
FORMAT([Value], "0%"),
"Price Factor",
(100 - [Value]) / 100
)
ตารางที่มี 3 คอลัมน์: Value (0-50), Discount Label (0%, 5%, ...), Price Factor (1.00, 0.95, ...)
คอลัมน์จะชื่อ Value โดยอัตโนมัติ ใช้ [Value] หรือ GENERATESERIES(…)[Value] เพื่ออ้างอิง
ไม่ โดยตรง GENERATESERIES สร้างเป็นตัวเลขเท่านั้น หากต้องการลำดับวันที่ ให้ใช้ CALENDAR หรือ CALENDARAUTO แทน หรือสร้างตัวเลขด้วย GENERATESERIES แล้วแปลงเป็นวันที่ด้วย DATE/DATEADD
ฟังก์ชันจะคืนค่ากลับมาเป็น empty table (ตารางว่าง) ไม่มีข้อผิดพลาด
ไม่ IncrementValue ต้องเป็นจำนวนบวกเท่านั้น หากต้องการลำดับลดลง ให้สลับค่า StartValue และ EndValue แล้วใช้ Increment บวก
ไม่ GENERATESERIES ไม่รองรับ DirectQuery mode สำหรับ calculated columns หรือ RLS rules ต้องใช้กับ Import mode
GENERATESERIES เป็นฟังก์ชันที่สร้างตารางตัวเลขแบบลำดับเรียบง่าย ส่วนตัวผมชอบใช้เพื่อสร้าง parameter table สำหรับ slicer ตัวเลข หรือสร้างชุดค่า discount/commission range สำหรับการวิเคราะห์ what-if
สิ่งที่เจ๋งคือ มันง่ายมากในการใช้ แต่มีความจำเป็นสูงมาก โดยเฉพาะเวลาต้องสร้าง lookup table ตัวเลขที่ติดต่อกัน แทนที่จะไปพิมพ์ตัวเลขด้วยมือ
ส่วนตัวผม ถ้าต้องการเพิ่มความซับซ้อน เช่น เพิ่มคำอธิบาย หรือ label ให้แต่ละตัวเลข ก็ใช้ ADDCOLUMNS ช่วยได้ครับ 😎 วิธีนี้ทำให้ parameter table ของเราเป็นตารางสมบูรณ์ที่พร้อมใช้เลย