Thep Excel

List.PositionOfหาตำแหน่งของสมาชิกใน List

List.PositionOf จะคืนค่า Index แรกสุด (0-based) ของ value ที่พบใน list ถ้าไม่พบจะคืนค่า -1 สามารถระบุ occurrence เพื่อหาตำแหน่งของตัวที่ซ้ำกัน และใช้ comparer เพื่อกำหนดวิธีการเปรียบเทียบ (Case Sensitive/Insensitive)

fx
=List.PositionOf(list, value, [occurrence], [comparer]) as any

ความนิยม5/10
ความยาก3/10
ประโยชน์5/10

อัปเดต 3 December 2025

Syntax & Arguments

อาร์กิวเมนต์ ชนิด ค่าเริ่มต้น คำอธิบาย
list list List ที่ต้องการค้นหา
value any ค่าที่ต้องการค้นหาใน List
[occurrence]ไม่บังคับ number 0 ตำแหน่งที่ต้องการหา (0=ตัวแรก, 1=ตัวที่สอง, …)
[comparer]ไม่บังคับ function null ฟังก์ชัน Comparer สำหรับกำหนดวิธีการเปรียบเทียบ

[ ] = อาร์กิวเมนต์ที่ไม่บังคับ

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

How it works

ตรวจสอบลำดับสินค้า

หาว่าสินค้าชิ้นนี้อยู่ลำดับที่เท่าไหร่ในรายการสั่งซื้อ

ใช้กับ Text.Split

เมื่อ Text.Split แยกข้อความเป็น List แล้ว สามารถหาตำแหน่งของคำบางคำได้

Examples

ตัวอย่างที่ 1: หาตำแหน่งสมาชิกList.PositionOf({"A", "B", "C"}, "B")

"B" อยู่ตำแหน่ง Index ที่ 1 (เริ่มนับจาก 0)

fx
=List.PositionOf({"A", "B", "C"}, "B")

ผลลัพธ์1
ตัวอย่างที่ 2: หาตำแหน่งที่ไม่พบList.PositionOf({"A", "B", "C"}, "D")

ไม่พบ "D" ใน List จึงคืนค่า -1

fx
=List.PositionOf({"A", "B", "C"}, "D")

ผลลัพธ์-1
ตัวอย่างที่ 3: หาตำแหน่งตัวที่สองList.PositionOf({"A", "B", "A", "C"}, "A", 1)

หา "A" ตัวที่สอง ซึ่งอยู่ตำแหน่ง Index ที่ 2

fx
=List.PositionOf({"A", "B", "A", "C"}, "A", 1)

ผลลัพธ์2

FAQs

Index 0-based คืออะไร?+

หมายถึงการนับตำแหน่งเริ่มต้นที่ 0 ไม่ใช่ 1 เหมือน Excel Worksheet Function เช่น สมาชิกตัวแรกอยู่ Index 0, ตัวที่สองอยู่ Index 1

Resources & Related

ฟังก์ชันที่ผู้เขียนโยงไว้กับ List.PositionOf จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง

ฟังก์ชันนี้List.PositionOfList functions
List functions (3)
List.Accumulate

List.Accumulate เป็นฟังก์ชันสำหรับการวนลูปผ่านแต่ละ element ใน list พร้อมทั้งเก็บสถานะสะสมไว้ตลอดการทำงาน
.
โดยจะเริ่มต้นจากค่าเริ่มต้นที่กำหนด (seed value) และในแต่ละรอบของการวนลูป ฟังก์ชันจะส่งค่าสถานะปัจจุบัน (current state) พร้อมกับ element ปัจจุบันเข้าไปใน accumulator function ที่คุณกำหนดขึ้นมา เพื่อคำนวณและสร้างสถานะใหม่สำหรับรอบถัดไป
.
เมื่อวนลูปครบทุก element แล้ว ฟังก์ชันจะคืนค่าสถานะสุดท้ายกลับมา เหมาะสำหรับการคำนวณยอดสะสม (running totals) การรวมแบบกำหนดเอง (custom aggregations) และการสร้างรูปแบบ For-Next loop pattern ใน M language ครับ

List.Contains

List.Contains จะคืนค่า true หาก value ที่กำหนดเป็นสมาชิกของ List และคืนค่า false หากไม่พบ สามารถระบุ Comparer เพื่อกำหนดว่าจะให้ตรวจสอบแบบ Case Sensitive หรือ Case Insensitive ได้

List.PositionOfAny

List.PositionOfAny หาตำแหน่งแรกของค่าใดค่าหนึ่งจากชุดค่าที่ระบุในรายการ ใช้สำหรับการค้นหาและการจัดการรายการข้อมูล

Comments

อีเมลของคุณจะไม่ถูกเผยแพร่