Thep Excel

MID – ดึงข้อความจากตรงกลางตามตำแหน่งและจำนวนตัวอักษร

MID คืนสตริงย่อยจากข้อความ โดยเริ่มที่ StartNum (เริ่มนับที่ 1) และดึง NumChars ตัว ใช้บ่อยในการแยก/ตัดข้อความร่วมกับ LEFT/RIGHT/FIND/SEARCH

=MID(<Text>, <StartNum>, <NumChars>)

By ThepExcel AI Agent
13 December 2025

Function Metrics


Popularity
6/10

Difficulty
3/10

Usefulness
6/10

Syntax & Arguments

=MID(<Text>, <StartNum>, <NumChars>)

Argument Type Required Default Description
Text text Yes ข้อความต้นฉบับ
StartNum number Yes ตำแหน่งเริ่มต้น (เริ่มนับที่ 1)
NumChars number Yes จำนวนตัวอักษรที่ต้องการดึง

How it works

แยกส่วนของรหัสที่อยู่ตำแหน่งคงที่

เช่น รหัสรูปแบบ ABC-2025-001 ต้องการดึงปี 2025

ดึงข้อความระหว่างตัวคั่น

ใช้ร่วมกับ FIND/SEARCH เพื่อหาตำแหน่งตัวคั่น แล้วใช้ MID ดึงช่วงที่ต้องการ

Examples

ตัวอย่างที่ 1: ดึงตัวอักษร 4 ตัวเริ่มจากตำแหน่งที่ 5
ช่วงกลาง = MID(Data[Code], 5, 4)
ตำแหน่งเริ่มนับจาก 1 (ไม่ใช่ 0)
DAX Formula:

ช่วงกลาง = MID(Data[Code], 5, 4)

Result:

ได้ข้อความย่อยความยาว 4 ตัว เริ่มจากตำแหน่งที่ 5

ตัวอย่างที่ 2: ดึงปีจากรหัสแบบ ABC-2025-001
ปี = MID(Data[Code], 5, 4)
ถ้ารูปแบบรหัสคงที่ คุณสามารถกำหนด StartNum/NumChars ได้ตรง ๆ
DAX Formula:

ปี = MID(Data[Code], 5, 4)

Result:

ได้ 2025

ตัวอย่างที่ 3: ดึงข้อความหลัง – ตัวแรก (แนวคิด)
หลัง - แรก = VAR p = FIND("-", Data[Code], 1, 0) RETURN IF( p = 0, BLANK(), MID(Data[Code], p + 1, LEN(Data[Code]) - p) )
ใช้ FIND หาตำแหน่งตัวคั่น แล้วใช้ MID ดึงช่วงที่เหลือ
DAX Formula:

หลัง - แรก =
VAR p = FIND("-", Data[Code], 1, 0)
RETURN
IF(
    p = 0,
    BLANK(),
    MID(Data[Code], p + 1, LEN(Data[Code]) - p)
)

Result:

ได้ข้อความหลังเครื่องหมาย - ตัวแรก

FAQs

MID เริ่มนับตำแหน่งจาก 0 หรือ 1?

เริ่มนับจาก 1

ถ้าต้องการดึงจากซ้ายหรือขวาใช้ฟังก์ชันอะไร?

ใช้ LEFT เพื่อดึงจากซ้าย และ RIGHT เพื่อดึงจากขวา

Resources & Related

Additional Notes

MID ใช้ดึงบางส่วนของข้อความจาก “ตรงกลาง” โดยกำหนดตำแหน่งเริ่มต้น (เริ่มนับที่ 1) และจำนวนตัวอักษรที่ต้องการ เหมาะกับงานแยกโค้ด, ตัดส่วนของรหัส, หรือดึงข้อมูลที่อยู่ตำแหน่งคงที่ในสตริง

Leave a Reply

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