Thep Excel

SEARCHค้นหาตำแหน่งของคำ (ไม่สนตัวพิมพ์ และใช้ Wildcard ได้)

SEARCH ค้นหาตำแหน่งของคำที่ต้องการในข้อความหลัก ถ้าเจอคืนตัวเลขตำแหน่งที่พบ ถ้าไม่เจอคืน #VALUE! ต่างจาก FIND ตรงที่ไม่แยกแยะตัวพิมพ์เล็ก-ใหญ่ (A=a) และใช้ wildcard (* กับ ?) ค้นหาแบบมีรูปแบบได้ เอาไปต่อกับ ISNUMBER ก็กลายเป็นสูตรเช็คว่าเซลล์มีคำนี้อยู่หรือไม่ ซึ่งเป็นวิธีที่ใช้กันบ่อยที่สุดในงานจัดหมวดหมู่หรือกรองข้อมูลจากคำสำคัญ

fx
=SEARCH(find_text, within_text, [start_num])

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

อัปเดต 14 December 2025

Syntax & Arguments

อาร์กิวเมนต์ ชนิด ค่าเริ่มต้น คำอธิบาย
find_text Text คำที่ต้องการค้นหา (รองรับ Wildcard *, ?)
within_text Text ข้อความหลักที่จะเข้าไปค้นหา
[start_num]ไม่บังคับ Number 1 ตำแหน่งเริ่มต้นที่จะให้ค้นหา (ถ้าไม่ระบุจะเริ่มจากตัวแรก)

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

Additional Notes

ฟังก์ชัน SEARCH หาตำแหน่งเริ่มต้นของคำหรือตัวอักษรในข้อความ จุดเด่นคือไม่สนใจตัวพิมพ์เล็ก-ใหญ่ (case-insensitive) และรองรับ wildcard (*, ?) เพื่อค้นหาแบบมีรูปแบบได้ ต่างจาก FIND ที่สนตัวพิมพ์และห้ามใช้ wildcard

งานที่ใช้บ่อยที่สุดไม่ใช่การหาตำแหน่งตัวเลขตรงๆ แต่คือเอา SEARCH ไปห่อด้วย ISNUMBER เพื่อสร้างเงื่อนไข “เซลล์นี้มีคำว่า X อยู่หรือเปล่า” ใช้จัดหมวดหมู่ตั๋วงาน ค้นหาคำสำคัญในข้อความยาว หรือตัดข้อความออกเป็นส่วนๆ ด้วย MID/LEFT/RIGHT โดยอาศัยตำแหน่งที่ SEARCH หาเจอ

How it works

กรองข้อมูลด้วยคีย์เวิร์ด

ใช้ SEARCH ร่วมกับ FILTER เพื่อดึงรายการสินค้าที่มีคำว่า "Pro" ผสมอยู่ในชื่อสินค้า (เช่น iPad Pro, Mac Pro)

จัดกลุ่มข้อมูล (Categorization)

ใช้ SEARCH ตรวจสอบว่าในที่อยู่มีคำว่า "Bangkok" หรือ "Krukthep" หรือไม่ เพื่อจัดกลุ่มเป็น "กทม."

Examples

ค้นหาแบบไม่สนตัวพิมพ์SEARCH("apple", "PineApple")

ค้นหา "apple" ใน "PineApple" จะเจอที่ตำแหน่งที่ 5 (แม้ตัว A จะเป็นตัวใหญ่ก็ถือว่าตรงกัน)

fx
=SEARCH("apple", "PineApple")

ผลลัพธ์5
ใช้ Wildcard ค้นหาคำที่ขึ้นต้นด้วย PSEARCH("P*", "Apple Pie")

ค้นหาตัว P ตามด้วยอะไรก็ได้ (*) จะเจอ p ตัวแรกที่ตำแหน่งที่ 2 (ใน Apple) เพราะ SEARCH ไม่สนใจตัวพิมพ์เล็ก-ใหญ่ (case-insensitive) — ต่างจาก FIND ที่สนใจ

fx
=SEARCH("P*", "Apple Pie")

ผลลัพธ์2
แยก Domain Name จากอีเมลMID(A2, SEARCH("@", A2) + 1, 100)

ใช้ SEARCH หาตำแหน่งของ "@" แล้วบวก 1 เพื่อเป็นจุดเริ่มต้นให้ฟังก์ชัน MID ตัดข้อความส่วนที่เป็น Domain ออกมา

fx
=MID(A2, SEARCH("@", A2) + 1, 100)

ผลลัพธ์gmail.com
ตรวจสอบว่ามีคำว่า "Urgent" หรือไม่ISNUMBER(SEARCH("Urgent", A2))

ถ้าเจอคำว่า Urgent (ไม่ว่าจะพิมพ์เล็กหรือใหญ่) SEARCH จะคืนค่าตัวเลข และ ISNUMBER จะได้ TRUE แต่ถ้าไม่เจอ SEARCH จะคืน #VALUE! ซึ่ง ISNUMBER จับได้ว่าไม่ใช่ตัวเลขจึงได้ FALSE — วิธีนี้คือแพทเทิร์นมาตรฐานที่ใช้แปลง 'หาเจอไหม' ให้กลายเป็น TRUE/FALSE เอาไปกรองหรือทำเงื่อนไขต่อได้

fx
=ISNUMBER(SEARCH("Urgent", A2))

ผลลัพธ์TRUE/FALSE
จัดหมวดหมู่ตั๋วงานจากคำสำคัญในข้อความ (Support/CRM)IFS(ISNUMBER(SEARCH("ด่วน",A2)),"เร่งด่วน",ISNUMBER(SEARCH("สอบถาม",A2)),"สอบถามทั่วไป",TRUE,"ไม่ระบุหมวด")

IFS ไล่เช็คทีละเงื่อนไข ถ้าข้อความใน A2 มีคำว่า 'ด่วน' อยู่ที่ไหนก็ได้ (ไม่ต้องขึ้นต้นด้วยคำนี้) จะได้หมวด 'เร่งด่วน' ทันที ถ้าไม่เจอคำนี้ค่อยไปเช็คคำถัดไป เงื่อนไขสุดท้าย TRUE ทำหน้าที่เป็น default กันกรณีไม่เข้าเงื่อนไขไหนเลย เอาไว้จัดกลุ่มตั๋วงานจำนวนมากโดยไม่ต้องนั่งอ่านทีละแถว

fx
=IFS(ISNUMBER(SEARCH("ด่วน",A2)),"เร่งด่วน",ISNUMBER(SEARCH("สอบถาม",A2)),"สอบถามทั่วไป",TRUE,"ไม่ระบุหมวด")

ผลลัพธ์"เร่งด่วน" เมื่อ A2 = "ลูกค้าแจ้งด่วน ระบบล่ม"

FAQs

SEARCH ต่างจาก FIND อย่างไร?+

SEARCH ไม่สนตัวพิมพ์ (A=a) และใช้ Wildcard ได้ ส่วน FIND สนตัวพิมพ์ (A!=a) และใช้ Wildcard ไม่ได้

Wildcard คืออะไร?+

คือเครื่องหมายแทนตัวอักษร: (*) แทนอะไรก็ได้กี่ตัวก็ได้, (?) แทนตัวอักษร 1 ตัว เช่น "a?t" จะเจอ ant, art, act

ทำไม SEARCH คืน #VALUE! ทั้งที่มั่นใจว่ามีคำนั้นอยู่ในเซลล์จริง?+

ส่วนใหญ่เป็นเพราะข้อมูลต้นทางมีอักขระแฝงที่ตาเห็นเหมือนกันแต่ไม่ใช่ตัวเดียวกัน เช่น เว้นวรรคแบบ non-breaking space ที่ก็อปมาจากเว็บ หรือใช้เครื่องหมายขีดคนละแบบ (- ธรรมดา กับ – en dash) วิธีเช็คคือลอง SEARCH คำที่สั้นลงเรื่อยๆ ดูว่าหลุดตรงไหน หรือห่อ within_text ด้วย CLEAN และ TRIM ก่อนค้นหาเพื่อตัดอักขระแปลกปลอมออก

เช็คว่าเซลล์มีคำใดคำหนึ่งจากหลายคำ (contains any of) ทำยังไง?+

ใช้ SUMPRODUCT ห่อ ISNUMBER(SEARCH({…},A2)) โดยใส่รายการคำที่ต้องการเป็นอาเรย์ เช่น =SUMPRODUCT(–ISNUMBER(SEARCH({"ผ้าฝ้าย","ผ้าไหม","ผ้าลินิน"},A2)))>0 จะได้ TRUE ถ้า A2 มีคำใดคำหนึ่งในลิสต์นั้นอยู่ ไม่ต้องเขียน OR(ISNUMBER(…)) ซ้อนกันทีละคำ

อยากหาตำแหน่งของคำเดียวกันที่ปรากฏครั้งที่สอง ทำยังไง?+

ใช้ start_num ระบุตำแหน่งเริ่มค้นหาถัดจากที่เจอครั้งแรก เช่น =SEARCH("@",A2,SEARCH("@",A2)+1) จะหา @ ตัวที่สองในข้อความ โดย SEARCH ชั้นในหาตำแหน่ง @ ตัวแรกก่อน แล้วบวก 1 ให้ SEARCH ชั้นนอกเริ่มค้นหาถัดจากจุดนั้น

Resources & Related

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

ฟังก์ชันนี้SEARCHText
Text (13)
CODE

ส่งกลับรหัส ASCII (ANSI code) ของตัวอักษรตัวแรกในข้อความ ตรงข้ามกับฟังก์ชัน CHAR

EXACT

EXACT เปรียบเทียบข้อความสองข้อความว่าเหมือนกันทุกประการหรือไม่ โดยสนใจตัวพิมพ์ใหญ่-เล็ก (Case-sensitive) คืนค่า TRUE ถ้าเหมือนกัน FALSE ถ้าต่างกัน

FIND

FIND ค้นหาตำแหน่งเริ่มต้นของคำที่ต้องการภายในข้อความหลัก โดยสนใจตัวพิมพ์เล็ก-ใหญ่ (เช่น "A" ไม่เหมือนกับ "a") ถ้าค้นหาไม่เจอจะคืนค่า Error #VALUE! มักใช้ร่วมกับ MID, LEFT, RIGHT เพื่อตัดคำตามตำแหน่ง

LEFT

LEFT ดึงตัวอักษรจากด้านซ้ายสุดของข้อความตามจำนวนที่ต้องการ ถ้าไม่ระบุจำนวนจะดึงมา 1 ตัว ผลลัพธ์เป็น Text เสมอแม้ดึงตัวเลขออกมา

LEN

LEN คืนค่าเป็นตัวเลขจำนวนเต็ม แสดงความยาวของข้อความในเซลล์ มีประโยชน์มากในการตรวจสอบความถูกต้องของข้อมูล (Data Validation) เช่น เช็ครหัสพนักงาน, เบอร์โทรศัพท์, หรือเลขบัตรประชาชน ว่ามีความยาวครบถ้วนหรือไม่

LOWER

LOWER แปลงข้อความทั้งหมดเป็นตัวพิมพ์เล็ก (lowercase) เหมาะสำหรับทำความสะอาดข้อมูลและเปรียบเทียบข้อความโดยไม่สนตัวพิมพ์ เพราะในบางโปรแกรม Case-sensitive จึงต้องแปลงให้เป็นมาตรฐานเดียวกัน

MID

MID ตัดข้อความออกจากตำแหน่งเริ่มต้นที่คุณกำหนด โดยระบุความยาวของข้อความที่ต้องการ สะดวกมากสำหรับดึงข้อมูลบางส่วนจากข้อความที่ยาว เช่น รหัสสินค้า, รหัสพนักงาน, หรือวันที่ที่ฝังตัวในข้อความ

REGEXEXTRACT

REGEXEXTRACT เป็นฟังก์ชันสำหรับดึงข้อความย่อย (Substring) ที่ตรงกับรูปแบบ Regular Expression (Regex) ที่กำหนด เหมาะสำหรับการทำ Data Cleaning ขั้นสูง

REGEXREPLACE

REGEXREPLACE ค้นหาและแทนที่ข้อความจากรูปแบบ Regular Expression ใช้สำหรับ Data Cleaning ที่ซับซ้อน เหมาะสำหรับ Excel 365 รองรับ backreferences

REGEXTEST

REGEXTEST เป็นฟังก์ชันสำหรับทดสอบว่าข้อความตรงกับรูปแบบ Regular Expression ที่กำหนดหรือไม่ คืนค่า TRUE หรือ FALSE เหมาะสำหรับการตรวจสอบความถูกต้องของข้อมูล (Validation) เช่น ที่อยู่อีเมล เบอร์โทรศัพท์ หรือรูปแบบข้อมูลอื่น ๆ

REPLACE

REPLACE แทนที่ข้อความจากตำแหน่งที่กำหนด โดยระบุตำแหน่งเริ่มต้น จำนวนตัวอักษรที่ต้องการลบ และข้อความใหม่ที่จะใส่แทน แตกต่างจาก SUBSTITUTE ที่ค้นหาคำที่ตรงตามความพึงพอใจ REPLACE ใช้ตำแหน่งแน่นอน

RIGHT

RIGHT จะคืนค่าเป็นข้อความ (Text) ที่ถูกตัดมาจากด้านขวาสุดของข้อความต้นฉบับตามจำนวนที่ระบุ ถ้าไม่ระบุจำนวน ฟังก์ชันจะดึงมาเพียง 1 ตัวอักษร
.
ที่เจ๋งคือสามารถใช้ร่วมกับ LEN หรือ FIND เพื่อตัดข้อความแบบไดนามิกได้ ผลลัพธ์ที่ได้จะเป็น Text เสมอ ถ้าต้องการนำไปคำนวณต่อ ต้องแปลงเป็นตัวเลขก่อนครับ

SUBSTITUTE

SUBSTITUTE ค้นหาคำเก่า (old_text) ในข้อความแล้วแทนที่ด้วยคำใหม่ (new_text) โดยแยกแยะตัวพิมพ์เล็ก-ใหญ่ (case-sensitive) และเลือกได้ว่าจะแทนที่ทุกจุดที่เจอ หรือเฉพาะลำดับที่ระบุผ่าน instance_num งานที่ใช้บ่อยคือลบตัวคั่นออกจากตัวเลขที่ถูกเก็บเป็นข้อความ เปลี่ยนโดเมนอีเมลหลังรีแบรนด์ หรือล้างอักขระที่พิมพ์มาผิดรูปแบบก่อนนำไปคำนวณต่อ

Information (2)
ISERROR

ISERROR ตรวจสอบค่าว่าเป็น Error หรือไม่ โดยครอบคลุม Error ทุกประเภทใน Excel ได้แก่ #N/A, #VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?, และ #NULL! มักใช้คู่กับ IF เพื่อแสดงข้อความเตือนหรือจัดการกับ Error ก่อนที่จะแสดงผล

ISNUMBER

ISNUMBER ตรวจสอบค่าที่ระบุว่าเป็นประเภทตัวเลขหรือไม่ (รวมถึงวันที่และเวลาซึ่ง Excel เก็บเป็นตัวเลข) แต่จะไม่นับตัวเลขที่ถูกจัดเก็บเป็นข้อความ (Numbers stored as text) ผลลัพธ์ที่ได้คือ TRUE หรือ FALSE

Logical (1)
IFS

IFS ทดสอบหลายเงื่อนไขตามลำดับที่กำหนด และคืนค่าของเงื่อนไขแรกที่เป็น TRUE แล้วหยุดทำงานทันที โครงสร้างเป็นคู่ (เงื่อนไข, ผลลัพธ์) ซ้ำได้สูงสุด 127 คู่ ทำให้อ่านและเขียนง่ายกว่า Nested IF แบบซ้อนชั้น ควรใส่ TRUE เป็นเงื่อนไขสุดท้ายเพื่อกำหนดค่า default ป้องกัน #N/A error มีตั้งแต่ Excel 2019 และ Microsoft 365 เท่านั้น

Math and trigonometry (1)
ฟังก์ชัน SUMPRODUCT ใน Excel

คูณข้อมูลจากหลายช่วงแล้วรวมผลลัพธ์ รองรับเงื่อนไขซับซ้อนและการคำนวณมีเงื่อนไข

Comments

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