FIRSTNONBLANKVALUE คืนค่าแรกที่ไม่เป็น BLANK ของ Expression เมื่อประเมินตามลำดับของ Column ในบริบทตัวกรองปัจจุบัน ใช้หา “ค่าครั้งแรกที่มีข้อมูล” ตามลำดับของคอลัมน์ เช่นวันแรกที่มียอดขายแล้วคืนยอดขายของวันนั้น
=FIRSTNONBLANKVALUE(<Column>, <Expression>)
=FIRSTNONBLANKVALUE(<Column>, <Expression>)
| Argument | Type | Required | Default | Description |
|---|---|---|---|---|
| Column | column | Yes | คอลัมน์ที่ใช้เป็นลำดับสำหรับการไล่ค่า (มักเป็นวันที่/คีย์ที่เรียงลำดับได้) | |
| Expression | expression | Yes | นิพจน์/Measure ที่ต้องการคืนค่าแรกที่ไม่เป็น BLANK |
หา “ยอดขาย” ของวันแรกที่ [Total Sales] ไม่เป็น BLANK
คืนค่าสถานะครั้งแรกที่มีข้อมูลในช่วงเวลาที่เลือก
ใช้กับการกรองตามลูกค้า/สินค้า เพื่อหา “ค่าแรกที่มีข้อมูล” ภายในกลุ่มนั้น
ยอดขายวันแรกที่มียอด = FIRSTNONBLANKVALUE( 'Date'[Date], [Total Sales] )ยอดขายวันแรกที่มียอด =
FIRSTNONBLANKVALUE(
'Date'[Date],
[Total Sales]
)
ได้ค่าของ [Total Sales] ในวันแรก (ตามลำดับ 'Date'[Date]) ที่ไม่เป็น BLANK
สถานะแรก (ไม่ว่าง) = FIRSTNONBLANKVALUE( 'Log'[EventDate], SELECTEDVALUE('Log'[Status]) )=สถานะแรก (ไม่ว่าง) =
FIRSTNONBLANKVALUE(
'Log'[EventDate],
SELECTEDVALUE('Log'[Status])
)
ได้สถานะแรกที่ไม่เป็น BLANK ตามลำดับวันที่
ยอดขายวันแรก (ตามตัวกรอง) = CALCULATE( FIRSTNONBLANKVALUE('Date'[Date], [Total Sales]), ALLSELECTED('Date') )=ยอดขายวันแรก (ตามตัวกรอง) =
CALCULATE(
FIRSTNONBLANKVALUE('Date'[Date], [Total Sales]),
ALLSELECTED('Date')
)
ได้ค่าครั้งแรกที่ไม่ว่างภายใต้ช่วงวันที่ที่ผู้ใช้เลือก
FIRSTNONBLANK คืนค่า “ตาราง/ค่าแรก” ในแง่การเลือกแถว (มักใช้เป็นตารางตัวกรองให้ CALCULATE) ส่วน FIRSTNONBLANKVALUE จะคืน “ค่าของ Expression” สำหรับค่าแรกที่ไม่ว่างตาม Column
ขึ้นกับการเรียงลำดับของคอลัมน์ที่ระบุ (Column) และบริบทตัวกรองปัจจุบัน โดยทั่วไปใช้คอลัมน์วันที่ใน Date table
FIRSTNONBLANKVALUE ใช้เพื่อคืนค่า “ค่าแรกที่ไม่ว่าง (ไม่ใช่ BLANK)” ของนิพจน์ (Expression) เมื่อประเมินตามลำดับของค่าที่อยู่ในคอลัมน์ที่ระบุ เหมาะกับการหา “ค่าครั้งแรกที่มีข้อมูลจริง” เช่นยอดขายวันแรกที่มียอด, สถานะครั้งแรกที่ไม่ว่าง, หรือค่าที่เกิดขึ้นครั้งแรกตามลำดับเวลา
แนวคิดคือ: ไล่ค่าของคอลัมน์ (เช่นวันที่) ตามลำดับ แล้วประเมิน Expression ทีละค่า จนเจอผลลัพธ์ที่ไม่เป็น BLANK จากนั้นคืนค่านั้น