การใช้อักขระตัวแทน (wildcard characters) ในการค้นหา (Find and Replace) ใน Excel

wildcard หรืออักขระตัวแทน มักใช้ทดแทนอักขระ 1 ตัว หรือหลายตัว ในการค้นหาและแทนที่ (Find & Replace) ใน Excel รวมถึงใช้ในการทำ Conditional Formatting สำหรับเซลล์ที่มีข้อมูลเป็นข้อความ (text) ก็ได้

โดยการค้นหาแบบนี้จะมาเติมเต็มให้เราตอนที่รู้แค่บางส่วนของข้อมูล เช่น เพื่อนร่วมงานบอกว่า พี่เขาชื่อ “วิไล” อะไรสักอย่างนี่ล่ะ 😒 ปัญหาคือ เขียนยังไงได้บ้างล่ะ เพราะถ้าเราค้นด้วยคำว่า “วิไล” อาจไม่เจอ เพราะชื่อเขาอาจเป็น “วิลัยลักษณ์” อย่างนี้เป็นต้น

อักขระตัวแทน (wildcards)

อักขระตัวแทนคำอธิบาย
? (เครื่องหมายคำถาม)ใช้แทนอักขระ 1 ตัว อย่างเช่น ถ้าเราค้นหาด้วย s?t เราจะเจอทั้ง sit, set, sat แต่หากเราใช้ s??t เราก็จะได้ seat, slit, slot เป็นต้น
* (ดอกจันทร์)แทนอักขระกี่อักขระก็ได้ เช่น ถ้าเราค้นหา *east เราจะได้ผลลัพธ์ทั้งที่มีคำว่า *northeast* และ southeast เป็นต้น
~ (ตัวหนอน)ใช้เป็น escape string ซึ่งหมายความว่า ถ้าเราจะค้นหาข้อความที่มีเครื่องหมาย ? หรือ * และ ~ ต้องพิ่มพ์เป็น ~? ~* และ ~~ ตามลำดับ เช่น ถ้าเราจะค้นหาข้อความที่มีเครื่องหมายคำถามลงท้ายจะต้องค้นหาด้วย ~? จะได้ผลลัพธ์ที่มีคำว่า help? และ option? เป็นต้น

ตัวอย่างการใช้งาน

รูปแบบลักษณะผลลัพธ์ตัวอย่างผลลัพธ์
?เซลล์ที่มีอักขระ 1 ตัว“a”, “b”, “c” เป็นต้น
??เซลล์ที่มีอักขระ 2 ตัว“กอ”, “ขอ”, “of” เป็นต้น
???เซลล์ที่อักขระ 3 ตัว“sea”, “saw”, “off” เป็นต้น
*เซลล์ที่มีอักขระกี่ตัวก็ได้ รวมไปถึงตัวเลข และสูตร แต่ปกติเราจะไม่ใช้เดี่ยว ๆ เพราะมันจะได้ทุกเซลล์ที่ไม่ว่าง รวมทั้ง spacebar“a”, “abc”, “yes” เป็นต้น
*.xlsเซลล์ที่มีข้อความลงท้ายด้วย .xlsbook1.xls, book2.xls เป็นต้น
ch*เซลล์ที่ข้อความขึ้นต้นด้วย ch“check”, “choose” เป็นต้น
???-??เซลล์ที่มีอักขระ 3 ตัวหน้าขีด และตามดัวยอักขระ 2 ตัว“123-24”, “ABC-24” เป็นต้น
*~?ข้อความที่ลงท้ายด้วยเครื่องหมายคำถาม“Anybody?”, “ทำไม?” เป็นต้น
*xyz*ข้อความที่มี “xyz” อยู่ตรงกลางdef-xyz-fy25 และ xyz360 เป็นต้น

การค้นหาข้อความหรือตัวเลข

ฟีเจอร์ตัวค้นหาใน Excel ใช้สำหรับค้นหาอะไรบางอย่างในไฟล์ (workbook) ไม่ว่าจะเป็น “ข้อความ” หรือ “ตัวเลข” โดยเราอาจใช้ฟีเจอร์นี้ เพื่อดูข้อมูลอื่นที่เกี่ยวข้อง (reference) หรือแก้ไขโดยการ แทนที่ (replace) ก็ได้

โดยเรียกใช้งานได้จาก Home > Edit > Find & Select หรือกด Ctrl + F

และเราจะเห็นไดอะล็อก บ็อกซ์ (dialog box) ของ Find and Replace แสดงขึ้นมา และจากภาพเราขยายส่วนที่เป็น Option >> ออกมาด้วย

จากกรณีด้านบน เราอาจจะค้นหาด้วยคำว่า “วิ*” และกด Find All จะเจอคนที่ชื่อขึ้นต้นด้วยคำว่า “วิ” มาทั้งหมด ดังภาพด้านล่าง

หรือหากต้องการแทนที่ (replace) ด้วยข้อมูลที่เราต้องการ ก็สามารถเลือกที่แถบ Replace ดังภาพ ซึ่งก็จะมีช่อง Replace with: เพิ่มมาให้เราพิมพ์ข้อความที่ต้องการแทนที่เข้าไป

⚠️ อย่างไรก็ตาม หากจะกด Replace All (แทนที่ทั้งหมด) ให้ระวังมาก ๆ เพราะทุกคำว่า “วิ” ทั้งหมดใน Sheet จะถูกแทนที่ด้วยข้อความที่เราใส่เข้าไปทั้งหมด

โดยใน Option >> จะมีตัวเลือกเพิ่มคือ

Within: จะเลือกขอบเขตได้ว่า เป็น Sheet หรือเป็น Workbook
Search: จะเลือกได้ว่าจะให้ค้นหาแบบ By Rows ซึ่งเป็นค่าตั้งต้น หรือ By Columns
Look in: จะเลือกได้ว่าจะให้ค้นหาในส่วนใดบ้าง โดยค่าตั้งต้นจะเป็น Formulas ส่วนตัวเลือกอื่นจะเป็น

  • Values เฉพาะค่าในเซลล์
  • Comments เฉพาะในคอมเม้นต์
  • Notes เฉพาะในโน๊ต
    และ 3 แบบข้างบนนี้จะค้นหาได้อย่างเดียวนะ ไม่สามารถแทนที่ได้เหมือน Formulas

◻️Match case ถ้าเราต้องการให้แยกระหว่างตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ ให้เลือก
◻️Match entire cell contents ถ้าต้องการเฉพาะข้อมูลที่ตรงกับที่พิมพ์ไว้จริง ๆ เท่านั้น ไม่เอาแบบที่มีคำอื่นผสมรวมกันอยู่ ให้เลือก

การค้นหาจากรูปแบบ (cell format)

หรือบางทีคุณอาจจำเป็นต้องค้นหาจากการจัดรูปแบบ (format) ของเซลล์ ทำได้โดยการใช้ format... และกำหนดรูปแบบที่ต้องการค้นหา ดังภาพด้านล่าง

โดยในตัวอย่างเราต้องการจะค้นหาเซลล์ที่มีใส่สีส้มไว้ ซึ่งก็จะมีเซลล์เดียวคือ A3

ซึ่งเรากำหนดได้จากเลือกที่แถบ Fill และเลือกสีส้ม

⚠️ โดยการค้นหาแบบนี้ จะเป็นแบบ และ (AND) กับช่องข้อความ
💡 หากเราต้องการค้นหาแค่รูปแแบบไม่ระบุข้อความ ก็เว้นว่างไว้ได้

ฟังก์ชันที่ใช้ wildcards ได้

ถึงใน Excel จะไม่สามารถใช้อักขระแทนได้ทุกฟังก์ชัน แต่ฟังก์ชันเหล่านี้จะใช้ได้

การใช้อักขระแทน (wildcards) ใน Conditional Formatting

อย่างที่พูดถึงไว้ด้านบน เราสามารถใช้ wildcards ใน Conditional Formatting ได้เช่นกัน โดยใช้ร่วมกับฟังก์ชันที่สนับสนุน wildcards ⬆️ ด้านบน อย่างเช่น เราต้องการให้ชื่ออำเภอที่ขึ้นต้นด้วยคำว่า “Ban “ หรือ “บ้าน” แสดงเป็นตัวหนาสีน้ำเงิน ดังภาพนี้

จะทำได้โดย

  1. เลือก Range ที่ต้องการทำ Conditional Formatting
  2. ไปที่ Home > Conditional Formatting > New Rule…
  3. เลือก Use a formula to determine which cells to format
  4. ใส่สูตร =IF(COUNTIF(A2,"Ban *"),TRUE,FALSE)
  5. กดปุ่ม Format... และปรับรูปแบบที่ต้องการ

และเราก็จะเห็นชื่ออำเภอที่ขึ้นต้นด้วยคำว่า “Ban ” เป็นตัวหนาเอียงสีน้ำเงิน

ลองดูไฟล์ตัวอย่างนี้ จะทำให้เข้าใจได้ง่ายขึ้นครับ

สรุป

อักขระแทน หรือ wildcards มีไว้ช่วยให้เราค้นหา หรือเรียกใช้งานฟังก์ชันที่สนับสนุน โดยที่เราไม่จำเป็นต้องพิมพ์เงื่อนไขทั้งหมด เอาเท่าที่เราทราบ

หรือในอีกทางคือ ช่วยให้ match สิ่งที่ค้นหาจากข้อมูลบางส่วนที่เหมือนกัน อย่างในตัวอย่างการทำ Conditional Formatting


Posted

in

by

Tags:

Comments

Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.