Thep Excel

Table.PositionOf – หาตำแหน่งของแถว

ค้นหาตำแหน่ง (Index) ของแถวในตาราง

=Table.PositionOf(table as table, row as record, optional occurrence as nullable number, optional equationCriteria as any) as any

By ThepExcel AI Agent
6 December 2025

Function Metrics


Popularity
5/10

Difficulty
4/10

Usefulness
5/10

Syntax & Arguments

=Table.PositionOf(table as table, row as record, optional occurrence as nullable number, optional equationCriteria as any) as any

Argument Type Required Default Description
table table Yes ตารางที่ต้องการค้นหา
row record Yes Record ที่ต้องการค้นหา (แถว)
occurrence number Optional Occurrence.First ระบุว่าจะหาตัวแรก (Occurrence.First), ตัวสุดท้าย (Occurrence.Last) หรือทั้งหมด (Occurrence.All)
equationCriteria any Optional เกณฑ์การเปรียบเทียบ (เช่น “ID” หรือ Comparer.OrdinalIgnoreCase)

How it works

ค้นหา Index ของข้อมูลเพื่อใช้ในการอ้างอิง

ค้นหา Index ของข้อมูลเพื่อใช้ในการอ้างอิง

ตรวจสอบว่าข้อมูลอยู่ในลำดับที่เท่าไหร่

ตรวจสอบว่าข้อมูลอยู่ในลำดับที่เท่าไหร่

ใช้ร่วมกับฟังก์ชันอื่นที่ต้องการ Input เป็น Index

ใช้ร่วมกับฟังก์ชันอื่นที่ต้องการ Input เป็น Index

Examples

หาตำแหน่งของแถวที่ระบุ (เจอ)
let Source = #table({"ID", "Name"}, {{1, "A"}, {2, "B"}, {3, "C"}}), // หาตำแหน่งของแถวที่มี ID=2 และ Name="B" Position = Table.PositionOf(Source, [ID=2, Name="…
แถวที่ค้นหาอยู่ที่ Index 1 (คือแถวที่ 2 เพราะเริ่มนับจาก 0)
Power Query Formula:

let
    Source = #table({"ID", "Name"}, {{1, "A"}, {2, "B"}, {3, "C"}}),
    // หาตำแหน่งของแถวที่มี ID=2 และ Name="B"
    Position = Table.PositionOf(Source, [ID=2, Name="B"])
in
    Position

Result:

1

หาตำแหน่งของแถวที่ระบุ (ไม่เจอ)
let Source = #table({"ID"}, {{1}, {2}, {3}}), Position = Table.PositionOf(Source, [ID=99]) in Position
หากไม่พบข้อมูลที่ตรงกัน จะคืนค่า -1
Power Query Formula:

let
    Source = #table({"ID"}, {{1}, {2}, {3}}),
    Position = Table.PositionOf(Source, [ID=99])
in
    Position

Result:

-1

หาตำแหน่งทั้งหมด (Occurrence.All)
let Source = #table({"Category"}, {{"A"}, {{"B"}}, {{"A"}}}), // หาตำแหน่งของทุกแถวที่เป็น "A" Positions = Table.PositionOf(Source, [Category="A"], Occurrence.A…
คืนค่าเป็น List ของตำแหน่งที่เจอทั้งหมด (Index 0 และ 2)
Power Query Formula:

let
    Source = #table({"Category"}, {{"A"}, {{"B"}}, {{"A"}}}),
    // หาตำแหน่งของทุกแถวที่เป็น "A"
    Positions = Table.PositionOf(Source, [Category="A"], Occurrence.All)
in
    Positions

Result:

{0, 2}

Resources & Related

Resources

Additional Notes

ฟังก์ชัน Table.PositionOf ใช้สำหรับค้นหาตำแหน่ง (Index) ของแถวที่ตรงกับเงื่อนไขหรือค่าที่ระบุ โดยจะคืนค่าเป็นตัวเลข (เริ่มนับที่ 0) หากไม่พบจะคืนค่า -1

Leave a Reply

Your email address will not be published. Required fields are marked *