Excel: วิธีแยกตัวเลขจากสตริง
คุณสามารถใช้สูตรต่อไปนี้เพื่อแยกตัวเลขจากสตริงใน Excel:
=TEXTJOIN("",TRUE,IFERROR((MID( A2 ,ROW(INDIRECT("1:"&LEN( A2 ))),1)*1),""))
สูตรนี้จะแยกตัวเลขทั้งหมดออกจากสตริงในเซลล์ A2
ตัวอย่างเช่น ถ้าเซลล์ A2 มีนิพจน์ “25 bikes” สูตรนี้จะคืนค่า 25
ตัวอย่างต่อไปนี้แสดงวิธีการใช้สูตรนี้ในทางปฏิบัติ
ตัวอย่าง: แยกตัวเลขออกจากสตริงใน Excel
สมมติว่าเรามีรายการสตริงต่อไปนี้ใน Excel:
สมมติว่าเราต้องการแยกเฉพาะตัวเลขจากแต่ละสตริง
เมื่อต้องการทำเช่นนี้ เราสามารถพิมพ์สูตรต่อไปนี้ในเซลล์ B2 :
=TEXTJOIN("",TRUE,IFERROR((MID( A2 ,ROW(INDIRECT("1:"&LEN( A2 ))),1)*1),""))
จากนั้นเราสามารถคลิกและลากสูตรไปยังแต่ละเซลล์ที่เหลือในคอลัมน์ B:
ขณะนี้คอลัมน์ B มีเพียงตัวเลขจากแต่ละสตริงที่ตรงกันในคอลัมน์ A
สูตรนี้ทำงานอย่างไร?
จำสูตรที่เราใช้แยกตัวเลขจากสตริง:
=TEXTJOIN("",TRUE,IFERROR((MID( A2 ,ROW(INDIRECT("1:"&LEN( A2 ))),1)*1),""))
สูตรนี้ทำงานอย่างไร:
อันดับแรก ROW(INDIRECT(“1:”&LEN( A2 ))) ส่งคืนชุดตัวเลขตั้งแต่ 1 จนถึงความยาวของสตริง
จากนั้น (MID( A2 ,ROW(INDIRECT(“1:”&LEN( A2 ))),1)*1) แปลงอักขระทั้งหมดในข้อความเป็น #VALUE! ข้อผิดพลาด
จากนั้น IFERROR((MID( A2 ,ROW(INDIRECT(“1:”&LEN( A2 ))),1)*1),””) ลบ $VALUE ทั้งหมด! ข้อผิดพลาด
สุดท้าย TEXTJOIN(“”,TRUE,IFERROR((MID( A2 ,ROW(INDIRECT(“1:”&LEN( A2 ))),1)*1),””)) รวบรวมตัวเลขที่เหลือทั้งหมดและละเว้นช่องว่าง
ผลลัพธ์ที่ได้คือเราสามารถแยกเฉพาะตัวเลขจากแต่ละสตริงได้
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้อธิบายวิธีการทำงานทั่วไปอื่นๆ ใน Excel:
Excel: วิธีแยกข้อความระหว่างอักขระสองตัว
Excel: วิธีแยกข้อความหลังอักขระ
Excel: วิธีแยกข้อความหน้าอักขระ