FIND, FINDB (ฟังก์ชัน FIND, FINDB)

บทความนี้จะอธิบายถึงไวยากรณ์ของสูตรและการใช้ฟังก์ชัน FIND และ FINDB ใน Microsoft Excel

คำอธิบาย

FIND และ FINDB จะค้นหาสตริงข้อความหนึ่งภายในสตริงข้อความที่สอง และส่งกลับตัวเลขที่เป็นตำแหน่งเริ่มต้นของสตริงข้อความแรกจากอักขระแรกของสตริงข้อความที่สอง

สิ่งสำคัญ: 

  • ฟังก์ชันเหล่านี้อาจไม่พร้อมใช้งานในบางภาษา

  • FIND มีวัตถุประสงค์ในการใช้กับภาษาที่ใช้ชุดอักขระแบบไบต์เดี่ยว (SBCS) โดยที่ฟังก์ชัน FINDB มีวัตถุประสงค์ในการใช้กับภาษาที่ใช้ชุดอักขระแบบไบต์คู่ (DBCS) การตั้งค่าภาษาเริ่มต้นในคอมพิวเตอร์ของคุณจะมีผลต่อค่าส่งกลับในลักษณะดังต่อไปนี้

  • ไม่ว่าการตั้งค่าภาษาเริ่มต้นจะเป็นเช่นไร FIND จะนับจำนวนอักขระแต่ละตัวเป็น 1 เสมอ ทั้งอักขระแบบไบต์เดี่ยวและอักขระแบบไบต์คู่

  • FINDB จะนับอักขระแบบไบต์คู่แต่ละตัวเป็น 2 เมื่อคุณเปิดใช้งานการแก้ไขภาษาที่สนับสนุน DBCS แล้วตั้งค่าเป็นภาษาเริ่มต้น ไม่เช่นนั้นฟังก์ชัน FINDB จะนับอักขระแต่ละตัวเป็น 1

ภาษาที่สนับสนุน DBCS นั้นรวมทั้งญี่ปุ่น จีน (ประยุกต์) จีน (ดั้งเดิม) และเกาหลี

ไวยากรณ์

FIND(find_text, within_text, [start_num])

FINDB(find_text, within_text, [start_num])

ไวยากรณ์ฟังก์ชัน FIND และ FINDB มีอาร์กิวเมนต์ดังนี้

  • Find_text    (ต้องระบุ) ข้อความที่คุณต้องการจะค้นหา

  • Within_text    (ต้องระบุ) ข้อความที่มีข้อความที่ต้องการค้นหา

  • Start_num    (ระบุหรือไม่ก็ได้) ระบุอักขระที่จะให้เริ่มการค้นหา อักขระตัวแรกใน within_text ถือเป็นอักขระหมายเลข 1 ถ้าไม่ใส่ค่านี้ จะถือว่ามีค่าเท่ากับ 1

ข้อสังเกต

  • ฟังก์ชัน FIND และ FINDB เป็นฟังก์ชันที่แบบตรงตามตัวพิมพ์ใหญ่-เล็ก และไม่อนุญาตให้ใช้อักขระตัวแทน ถ้าคุณไม่ต้องการค้นหาแบบตรงตามตัวพิมพ์ใหญ่-เล็กหรือใช้อักขระตัวแทน คุณสามารถใช้ SEARCH และ SEARCHB ได้

  • ถ้า find_text เป็น "" (ว่าง) ฟังก์ชัน FIND จะส่งกลับค่าตำแหน่งของอักขระตัวแรกในสตริงการค้นหา (นั่นคืออักขระจะมีหมายเลข start_num หรือ 1)

  • Find_text ไม่สามารถมีอักขระตัวแทนใดๆ ได้

  • ถ้า find_text ไม่มีอยู่ใน within_text ฟังก์ชัน FIND และ FINDB จะส่งกลับ #VALUE! เป็นค่าความผิดพลาด

  • ถ้า start_num น้อยกว่าหรือเท่ากับศูนย์ ฟังก์ชัน FIND และ FINDB จะส่งกลับ #VALUE! เป็นค่าความผิดพลาด

  • ถ้า start_num มากกว่าความยาวของ within_text ฟังก์ชัน FIND และ FINDB จะส่งกลับ #VALUE! เป็นค่าความผิดพลาด

  • ใช้ start_num เพื่อระบุจำนวนอักขระที่ต้องการข้ามไป โดยใช้ฟังก์ชัน FIND เป็นตัวอย่าง สมมติว่าคุณกำลังทำงานอยู่กับสตริงข้อความ "AYF0093.YoungMensApparel" ในการค้นหาเลขตำแหน่งของ "Y" ตัวแรกในส่วนที่อธิบายความหมายของสตริงข้อความนี้ ให้ตั้ง start_num ไว้เป็น 8 เพื่อว่าส่วนที่เป็นหมายเลขสินค้าของข้อความนี้จะได้ไม่ต้องถูกค้นหา โดยฟังก์ชัน FIND เริ่มการค้นหาที่อักขระตัวที่ 8 และค้นหา find_text นับจากอักขระตัวถัดไป และส่งกลับตัวเลข 9 ฟังก์ชัน FIND จะส่งกลับตัวเลขของอักขระที่นับจากตำแหน่งเริ่มต้นของ within_text เสมอ โดยจะนับอักขระที่คุณข้ามด้วยถ้า start_num มีค่ามากกว่า 1

ตัวอย่าง

คัดลอกข้อมูลตัวอย่างในตารางต่อไปนี้ และวางในเซลล์ A1 ของเวิร์กชีต Excel ใหม่ เพื่อให้สูตรแสดงผลลัพธ์ ให้เลือกสูตร กด F2 แล้วกด Enter ถ้าต้องการ คุณสามารถปรับความกว้างของคอลัมน์เพื่อดูข้อมูลทั้งหมด

ข้อมูล

Miriam McGovern

สูตร

คำอธิบาย

ผลลัพธ์

=FIND("M",A2)

ตำแหน่งของอักขระ "m" ตัวแรกในเซลล์ A2

1

=FIND("m",A2)

ตำแหน่งของอักขระ "m" ตัวแรกในเซลล์ A2

6

=FIND("M",A2,3)

ตำแหน่งของอักขระ "M" ตัวแรกในเซลล์ A2 โดยเริ่มต้นจากอักขระตัวที่สาม

8

ตัวอย่าง 2

ข้อมูล

Ceramic Insulators #124-TD45-87

Copper Coils #12-671-6772

Variable Resistors #116010

สูตร

คำอธิบาย (ผลลัพธ์)

ผลลัพธ์

=MID(A2,1,FIND(" #",A2,1)-1)

แยกข้อความตั้งแต่ตำแหน่งที่ 1 จนถึงตำแหน่ง "#" ในเซลล์ A2 (Ceramic Insulators)

Ceramic Insulators

=MID(A3,1,FIND(" #",A3,1)-1)

แยกข้อความตั้งแต่ตำแหน่งที่ 1 จนถึงตำแหน่ง "#" ในเซลล์ A3 (Copper Coils)

Copper Coils

=MID(A4,1,FIND(" #",A4,1)-1)

แยกข้อความตั้งแต่ตำแหน่งที่ 1 จนถึงตำแหน่ง "#" ในเซลล์ A4 (Variable Resistors)

Variable Resistors

ขยายทักษะของคุณ
สำรวจการฝึกอบรม
รับฟีเจอร์ใหม่ก่อนใคร
เข้าร่วม Office Insider

ข้อมูลนี้เป็นประโยชน์หรือไม่

ขอบคุณสำหรับคำติชมของคุณ!

ขอขอบคุณสำหรับคำติชมของคุณ! เราคิดว่าอาจเป็นประโยชน์ที่จะให้คุณได้ติดต่อกับหนึ่งในตัวแทนฝ่ายสนับสนุน Office ของเรา

×