หน้าเว็บ

วันอาทิตย์ที่ 9 พฤศจิกายน พ.ศ. 2551

การดึงตัวเลขออกจากตัวอักษร

ในบางกรณีที่มีการนำข้อมูลเข้าจากโปรแกรมอื่น เป็นไปได้ว่าบางเซลล์มีตัวเลขผสมกับอักขระในลักษณะเป็นกลุ่ม ๆ เช่น

สมมุติ A1:A3 มีค่าตามลำดับดังนี้

A1: ABC123XYZ
A2: 456ABC
A3: XYZ789

หากจะดึง 123, 456, 789 ออกมาจากอักขระด้านบนตามลำดับ สามารถใช้สูตรที่ B1 ได้ดังนี้

=LOOKUP(9.99999999999999E+307,--MID(A1,MIN(SEARCH({0,1,2,3,4,5,6,7,8,9},A1&"0123456789")),ROW(INDIRECT("1:"&LEN(A1)))))

Enter แล้ว Copy ลงด้านล่าง

ภาพการดึงตัวเลขออกจากตัวอักษร

ExtractNumberFromText

5 ความคิดเห็น:

Unknown กล่าวว่า...

แล้วถ้าต้องการดึงให้ออกมาแค่สองตัวล่ะครับผมต้องการแยกตัวเลขเบอร์โทรนะครับ สมมุตินะครับ 0888888888 อยากจะแยกออกมาเป็น 5 เซล เซลละ 2 ตัว
08
88
88
88
88
แบบนี้มีวิธีไหนทำได้บ้างครับ

snasui กล่าวว่า...

สามมาถใช้ Text to columns หรือสูตรได้ครับ สามารถสอบถามปัญหาได้ที่ http://www.snasui.com/ เพื่อแนบไฟล์ แนบภาพได้ จะได้สะดวกต่อการตอบ สมัครสมาชิกฟรีครับ

Unknown กล่าวว่า...

ตัวเลขที่ติดลบ มันเอาค่าลบออกไปด้วยคับ

snasui กล่าวว่า...

สูตรนี้ไม่ได้ตรวจสอบว่าลบหรือบวก ดึงมาเฉพาะตัวเลขเท่านั้นครับ

สามารถถามตอบปัญหาได้ที่ http://www.snasui.com สำหรับการดึงค่าใด ๆ ตามต้องการครับ

Unknown กล่าวว่า...

"0888888888 อยากจะแยกออกมาเป็น 5 เซล เซลละ 2 ตัว"
ใช้คำสั่ง MID ทำได้ครับ
MID(0888888888,1,2)
MID(0888888888,3,2)
MID(0888888888,5,2)
MID(0888888888,7,2)
MID(0888888888,9,2)