Excel: แยกสตริงตามตัวคั่นหรือรูปแบบ แยกข้อความและตัวเลข

  • แบ่งปันสิ่งนี้
Michael Brown

บทช่วยสอนจะอธิบายวิธีการแยกเซลล์ใน Excel โดยใช้สูตรและคุณสมบัติแยกข้อความ คุณจะได้เรียนรู้วิธีแยกข้อความด้วยเครื่องหมายจุลภาค ช่องว่าง หรือตัวคั่นอื่นๆ และวิธีแยกสตริงเป็นข้อความและตัวเลข .

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

    วิธีแยกข้อความใน Excel การใช้สูตร

    ในการแยกสตริงใน Excel โดยทั่วไปคุณใช้ฟังก์ชัน LEFT, RIGHT หรือ MID ร่วมกับ FIND หรือ SEARCH เมื่อแรกเห็น สูตรบางสูตรอาจดูซับซ้อน แต่ความจริงแล้วตรรกะค่อนข้างเรียบง่าย และตัวอย่างต่อไปนี้จะให้เบาะแสแก่คุณ

    แยกสตริงด้วยเครื่องหมายจุลภาค เครื่องหมายอัฒภาค เครื่องหมายทับ เครื่องหมายขีด หรือตัวคั่นอื่นๆ

    เมื่อแยกเซลล์ใน Excel สิ่งสำคัญคือการระบุตำแหน่งของตัวคั่นภายในสตริงข้อความ ขึ้นอยู่กับงานของคุณ ซึ่งสามารถทำได้โดยใช้ SEARCH ที่คำนึงถึงตัวพิมพ์เล็กหรือใหญ่หรือ FIND ที่คำนึงถึงตัวพิมพ์เล็กและใหญ่ เมื่อคุณได้ตำแหน่งของตัวคั่นแล้ว ให้ใช้ฟังก์ชัน RIGHT, LEFT หรือ MID เพื่อแยกส่วนที่สอดคล้องกันของสตริงข้อความ เพื่อความเข้าใจที่ดีขึ้นลองพิจารณาดังต่อไปนี้(วันที่)

  • อักขระระหว่างช่องว่างที่ 1 และคำ ข้อผิดพลาด: (เวลา)
  • ข้อความระหว่าง ข้อผิดพลาด: และ ข้อยกเว้น: (รหัสข้อผิดพลาด)
  • ทุกอย่างที่อยู่หลัง ข้อยกเว้น: (ข้อความยกเว้น)
  • ฉันหวังว่าคุณจะ ชอบวิธีที่ง่ายและรวดเร็วในการแยกสตริงใน Excel หากคุณสงสัยที่จะลองใช้ เวอร์ชันสำหรับทดลองใช้สามารถดาวน์โหลดได้ด้านล่างนี้ ฉันขอขอบคุณสำหรับการอ่านและหวังว่าจะได้พบคุณในบล็อกของเราในสัปดาห์หน้า!

    ดาวน์โหลดได้

    สูตร Excel Split Cells (ไฟล์ .xlsx)

    Ultimate Suite 14 วัน เวอร์ชันที่ทำงานได้อย่างสมบูรณ์ (ไฟล์ .exe)

    ตัวอย่าง

    สมมติว่าคุณมีรายการ SKU ของรูปแบบ สีสินค้า-ขนาด และคุณต้องการแยกคอลัมน์ออกเป็น 3 คอลัมน์แยกกัน:

    <10

    1. หากต้องการแยก ชื่อรายการ (อักขระทั้งหมดก่อนยัติภังค์ตัวที่ 1) ให้ใส่สูตรต่อไปนี้ใน B2 แล้วคัดลอกลงในคอลัมน์:

      =LEFT(A2, SEARCH("-",A2,1)-1)

      ในสูตรนี้ SEARCH กำหนดตำแหน่งของยัติภังค์ตัวที่ 1 ("-") ในสตริง และฟังก์ชัน LEFT จะแยกอักขระทั้งหมดที่เหลืออยู่ (คุณลบ 1 ออกจากตำแหน่งของยัติภังค์เพราะคุณไม่ ต้องการแยกยัติภังค์เอง)

    2. หากต้องการแยก สี (อักขระทั้งหมดระหว่างยัติภังค์ตัวที่ 1 และตัวที่ 2) ให้ป้อนข้อมูลต่อไปนี้ สูตรใน C2 แล้วคัดลอกลงไปที่เซลล์อื่น:

      =MID(A2, SEARCH("-",A2) + 1, SEARCH("-",A2,SEARCH("-",A2)+1) - SEARCH("-",A2) - 1)

      ในสูตรนี้ เรากำลังใช้ฟังก์ชัน Excel MID เพื่อแยกข้อความจาก A2

      ตำแหน่งเริ่มต้นและจำนวนอักขระที่จะดึงออกมาคำนวณโดยใช้ฟังก์ชันการค้นหาที่แตกต่างกัน 4 แบบ:

      • หมายเลขเริ่มต้น เป็นตำแหน่งของยัติภังค์ตัวแรก +1:

        SEARCH("-",A2) + 1

      • จำนวนอักขระที่จะแยก : ความแตกต่างระหว่างตำแหน่งของยัติภังค์ตัวที่ 2 และยัติภังค์ตัวที่ 1 ลบ 1:

        SEARCH("-", A2, SEARCH("-",A2)+1) - SEARCH("-",A2) -1

    3. หากต้องการแยก ขนาด (อักขระทั้งหมดหลังยัติภังค์ที่ 3) ให้ป้อนสูตรต่อไปนี้ใน D2:

      =RIGHT(A2,LEN(A2) - SEARCH("-", A2, SEARCH("-", A2) + 1))

      ในสูตรนี้ ฟังก์ชัน LEN จะคืนค่าความยาวทั้งหมดของสตริงซึ่งคุณลบตำแหน่งของยัติภังค์ที่ 2 ความแตกต่างคือจำนวนอักขระที่อยู่หลังยัติภังค์ตัวที่ 2 และฟังก์ชัน RIGHT จะแยกอักขระเหล่านั้น

    ในทำนองเดียวกัน คุณสามารถแบ่งคอลัมน์ตาม ตัวละครอื่นใด สิ่งที่คุณต้องทำคือแทนที่ "-" ด้วยตัวคั่นที่ต้องการ เช่น ช่องว่าง (" "), ลูกน้ำ (","), เครื่องหมายทับ ("/"), ทวิภาค (";"), เครื่องหมายอัฒภาค (";") และอื่นๆ

    เคล็ดลับ ในสูตรข้างต้น +1 และ -1 จะสอดคล้องกับจำนวนอักขระในตัวคั่น ในตัวอย่างนี้ เป็นยัติภังค์ (1 อักขระ) หากตัวคั่นประกอบด้วยอักขระ 2 ตัว เช่น เครื่องหมายจุลภาคและช่องว่าง จากนั้นระบุเฉพาะเครื่องหมายจุลภาค (",") ให้กับฟังก์ชัน SEARCH และใช้ +2 และ -2 แทน +1 และ -1

    วิธีแยกสตริงโดยขึ้นบรรทัดใหม่ Excel

    หากต้องการแบ่งข้อความตามช่องว่าง ให้ใช้สูตรที่คล้ายกับที่แสดงไว้ในตัวอย่างก่อนหน้า ข้อแตกต่างเพียงอย่างเดียวคือคุณจะต้องใช้ฟังก์ชัน CHAR เพื่อระบุอักขระตัวแบ่งบรรทัด เนื่องจากคุณไม่สามารถพิมพ์ลงในสูตรได้โดยตรง

    สมมติว่าเซลล์ที่คุณต้องการแบ่งมีลักษณะดังนี้:

    ใช้สูตรจากตัวอย่างก่อนหน้าและแทนที่เครื่องหมายยัติภังค์ ("-") ด้วย CHAR(10) โดยที่ 10 คือรหัส ASCII สำหรับการป้อนบรรทัด

    • แยก ชื่อรายการ :

      =LEFT(A2, SEARCH(CHAR(10),A2,1)-1)

    • แยก สี :

      =MID(A2, SEARCH(CHAR(10),A2) + 1, SEARCH(CHAR(10),A2,SEARCH(CHAR(10),A2)+1) - SEARCH(CHAR(10),A2) - 1)

    • หากต้องการแยก ขนาด :

      =RIGHT(A2,LEN(A2) - SEARCH(CHAR(10), A2, SEARCH(CHAR(10), A2) + 1))

    และนี่คือลักษณะของผลลัพธ์:

    วิธีแยกข้อความและตัวเลขใน Excel

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

    แยกสตริงของรูปแบบ 'ข้อความ + ตัวเลข'

    สมมติว่า คุณมีคอลัมน์ของสตริงที่มีข้อความและตัวเลขรวมกัน โดยที่ตัวเลข ตามข้อความเสมอ คุณต้องการทำลายสตริงเดิมเพื่อให้ข้อความและตัวเลขปรากฏในเซลล์แยกกัน เช่นนี้

    ผลลัพธ์อาจทำได้สองวิธี

    วิธีที่ 1: นับตัวเลขและแยกตัวอักษรจำนวนมาก

    วิธีที่ง่ายที่สุดในการแยกสตริงข้อความโดยที่ตัวเลขอยู่หลังข้อความคือ:

    ในการ แยกตัวเลข ให้คุณ ค้นหาสตริงสำหรับทุกตัวเลขที่เป็นไปได้ตั้งแต่ 0 ถึง 9 รับจำนวนทั้งหมด และส่งกลับอักขระจำนวนมากนั้นจากส่วนท้ายของสตริง

    ด้วยสตริงดั้งเดิมใน A2 สูตรจะเป็นดังนี้:<3

    =RIGHT(A2,SUM(LEN(A2) - LEN(SUBSTITUTE(A2, {"0","1","2","3","4","5","6","7","8","9"},""))))

    ในการ แยกข้อความ คุณต้องคำนวณจำนวนอักขระข้อความในสตริงโดยการลบจำนวนหลักที่แยก (C2) ออกจากความยาวทั้งหมดของสตริงต้นฉบับใน A2 . หลังจากนั้น คุณใช้ฟังก์ชัน LEFT เพื่อส่งกลับอักขระจำนวนมากนั้นจากจุดเริ่มต้นของสตริง

    =LEFT(A2,LEN(A2)-LEN(C2))

    โดยที่ A2 เป็นสตริงดั้งเดิมและ C2 เป็นตัวเลขที่แยกออกมา ดังที่แสดงในภาพหน้าจอ:

    วิธีที่ 2: ค้นหาตำแหน่งของหลักที่ 1 ในสตริง

    ทางเลือกอื่น วิธีแก้ไขจะใช้สูตรต่อไปนี้เพื่อกำหนดตำแหน่งของหลักแรกในสตริง:

    =MIN(SEARCH({0,1,2,3,4,5,6,7,8,9},A2&"0123456789"))

    เมื่อพบตำแหน่งของหลักแรกแล้ว คุณสามารถแยกข้อความและตัวเลขโดยใช้ สูตรซ้ายและขวาง่ายมาก

    แยก ข้อความ :

    =LEFT(A2, B2-1)

    แยก ตัวเลข :

    =RIGHT(A2, LEN(A2)-B2+1)

    โดยที่ A2 คือสตริงดั้งเดิม และ B2 คือตำแหน่งของตัวเลขแรก

    หากต้องการกำจัดคอลัมน์ตัวช่วยที่ถือ ตำแหน่งของหลักแรก คุณสามารถฝังสูตร MIN ลงในฟังก์ชัน LEFT และ RIGHT:

    สูตรเพื่อแยก ข้อความ :

    =LEFT(A2,MIN(SEARCH({0,1,2,3,4,5,6,7,8,9},A2&"0123456789"))-1)

    สูตร เพื่อแยก ตัวเลข :

    =RIGHT(A2,LEN(A2)-MIN(SEARCH({0,1,2,3,4,5,6,7,8,9},A2&"0123456789"))+1)

    แยกสตริงของรูปแบบ 'ตัวเลข + ข้อความ'

    หากคุณแยกเซลล์โดยที่ข้อความปรากฏหลังตัวเลข คุณจะ สามารถ แยกตัวเลข ด้วยสูตรต่อไปนี้:

    =LEFT(A2, SUM(LEN(A2) - LEN(SUBSTITUTE(A2, {"0","1","2","3","4","5","6","7","8","9"}, ""))))

    สูตรจะคล้ายกับที่กล่าวถึงในตัวอย่างก่อนหน้า ยกเว้นว่าคุณใช้ฟังก์ชัน LEFT แทน RIGHT เพื่อรับตัวเลขจากด้านซ้ายของสตริง

    เมื่อคุณมีตัวเลขแล้ว , แยก ข้อความ โดยการลบจำนวนหลักออกจากความยาวทั้งหมดของสตริงต้นฉบับ:

    =RIGHT(A2,LEN(A2)-LEN(B2))

    โดยที่ A2 เป็นสตริงดั้งเดิม และ B2 คือจำนวนที่แยกออกมาดังที่แสดงในภาพด้านล่าง:

    เคล็ดลับ หากต้องการรับตัวเลขจาก ตำแหน่งใดๆ ในสตริงข้อความ ให้ใช้สูตรนี้หรือเครื่องมือแยกข้อมูล

    นี่คือวิธีที่คุณสามารถแยกสตริงใน Excel โดยใช้ชุดค่าผสมต่างๆ ของฟังก์ชันต่างๆ อย่างที่คุณเห็น สูตรยังไม่ค่อยชัดเจนนัก ดังนั้นคุณอาจต้องการดาวน์โหลดตัวอย่างสมุดงาน Excel Split Cells เพื่อตรวจสอบอย่างละเอียด

    หากการหาสูตรลับของ Excel ไม่ใช่อาชีพที่คุณโปรดปราน อาจชอบวิธีการแยกเซลล์ด้วยภาพใน Excel ซึ่งจะแสดงให้เห็นในส่วนถัดไปของบทช่วยสอนนี้

    วิธีแยกเซลล์ใน Excel ด้วยเครื่องมือ Split Text

    อีกวิธีหนึ่งในการแยก คอลัมน์ใน Excel กำลังใช้คุณลักษณะแยกข้อความที่รวมอยู่ใน Ultimate Suite สำหรับ Excel ซึ่งมีตัวเลือกต่อไปนี้:

    เพื่อให้เข้าใจชัดเจนยิ่งขึ้น มาดูตัวเลือกแต่ละตัวเลือกให้ละเอียดยิ่งขึ้น หนึ่ง ในแต่ละครั้ง

    แยกเซลล์ตามอักขระ

    เลือกตัวเลือกนี้เมื่อใดก็ตามที่คุณต้องการแยกเนื้อหาของเซลล์ที่ แต่ละรายการของอักขระที่ระบุ .

    สำหรับตัวอย่างนี้ ลองใช้สตริงของรูปแบบ รายการสีขนาด ที่เราใช้ในส่วนแรกของบทช่วยสอนนี้ อย่างที่คุณจำได้ เราได้แยกคอลัมน์เหล่านี้ออกเป็น 3 คอลัมน์โดยใช้ 3 สูตรที่แตกต่างกัน และนี่คือวิธีที่คุณจะได้ผลลัพธ์เดียวกันใน 2 ขั้นตอนสั้นๆ:

    1. สมมติว่าคุณมี Ultimate Suiteติดตั้งแล้ว เลือกเซลล์ที่จะแบ่ง และคลิกไอคอน แยกข้อความ บนแท็บ Ablebits Data

    2. ปุ่ม <1 บานหน้าต่าง>แยกข้อความ จะเปิดขึ้นทางด้านขวาของหน้าต่าง Excel ของคุณ และคุณทำสิ่งต่อไปนี้:
      • ขยายกลุ่ม แบ่งตามอักขระ และเลือกตัวคั่นที่กำหนดไว้ล่วงหน้าตัวใดตัวหนึ่ง หรือพิมพ์อักขระอื่นในช่อง กำหนดเอง
      • เลือกว่าจะแบ่งเซลล์เป็นคอลัมน์หรือแถว
      • ตรวจทานผลลัพธ์ภายใต้ แสดงตัวอย่าง และคลิกปุ่ม แยก

    เคล็ดลับ ถ้าอาจมีตัวคั่นต่อเนื่องกันหลายตัวในเซลล์ (เช่น มีอักขระเว้นวรรคมากกว่าหนึ่งตัว) ให้เลือกกล่อง ถือว่าตัวคั่นที่เรียงติดกันเป็นหนึ่งตัว

    เสร็จสิ้น! งานที่ต้องใช้ 3 สูตรและ 5 ฟังก์ชันที่แตกต่างกันตอนนี้ใช้เวลาเพียงไม่กี่วินาทีและคลิกปุ่มเพียงครั้งเดียว

    แบ่งเซลล์ตามสตริง

    ตัวเลือกนี้ช่วยให้ คุณแยกสตริงโดยใช้ ชุดอักขระใดก็ได้ เป็นตัวคั่น ในทางเทคนิค คุณจะแยกสตริงออกเป็นส่วนๆ โดยใช้สตริงย่อยที่แตกต่างกันหนึ่งหรือหลายสตริงเป็นขอบเขตของแต่ละส่วน

    ตัวอย่างเช่น การแยกประโยคด้วยคำสันธาน " และ " และ " หรือ " ขยายกลุ่ม แยกตามสตริง และป้อนสตริงตัวคั่น หนึ่งรายการต่อบรรทัด:

    ผลลัพธ์คือ วลีต้นฉบับจะแยกออกจากกันในแต่ละช่วงของตัวคั่น:

    เคล็ดลับอักขระ "หรือ" และ "และ" มักจะเป็นส่วนหนึ่งของคำเช่น "ส้ม" หรือ "อันดาลูเซีย" ดังนั้นอย่าลืมพิมพ์ เว้นวรรค ก่อนและหลัง และ และ หรือ เพื่อป้องกันการแยกคำ

    และนี่คืออีกตัวอย่างในชีวิตจริง สมมติว่าคุณได้นำเข้าคอลัมน์วันที่จากแหล่งภายนอก ซึ่งมีลักษณะดังต่อไปนี้:

    5.1.2016 12:20

    5.2.2016 14:50

    รูปแบบนี้ไม่ปกติสำหรับ Excel ดังนั้นฟังก์ชัน Date จึงไม่จำองค์ประกอบวันที่หรือเวลาใดๆ หากต้องการแบ่งวัน เดือน ปี ชั่วโมง และนาทีลงในเซลล์แยกกัน ให้ป้อนอักขระต่อไปนี้ในช่อง แยกตามสตริง :

    • จุด (.) เพื่อแยกวัน เดือน , และปี
    • ทวิภาค (:) เพื่อแยกชั่วโมงและนาที
    • เว้นวรรคเพื่อคั่นวันที่และเวลา

    กด ปุ่ม แยก และคุณจะได้รับผลลัพธ์ทันที:

    แยกเซลล์ด้วยมาสก์ (รูปแบบ)

    แยกเซลล์ด้วยมาสก์ หมายถึงการแยกสตริง ตามรูปแบบ .

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

    สมมติว่าคุณมีรายการสตริงที่ดึงมาจากบันทึกบางรายการไฟล์:

    สิ่งที่คุณต้องการคือวันที่และเวลา หากมี รหัสข้อผิดพลาดและรายละเอียดข้อยกเว้นใน 3 คอลัมน์แยกกัน คุณไม่สามารถใช้ช่องว่างเป็นตัวคั่นได้เนื่องจากมีช่องว่างระหว่างวันที่และเวลา ซึ่งควรปรากฏในคอลัมน์เดียว และมีช่องว่างภายในข้อความยกเว้น ซึ่งควรปรากฏในคอลัมน์เดียวด้วย

    วิธีแก้ไขคือ แยกสตริงด้วยมาสก์ต่อไปนี้: *ERROR:*Exception:*

    โดยที่เครื่องหมายดอกจัน (*) แทนอักขระจำนวนเท่าใดก็ได้

    เครื่องหมายทวิภาค (:) รวมอยู่ในตัวคั่นเนื่องจากเราไม่ต้องการให้ตัวคั่นปรากฏในเซลล์ผลลัพธ์

    และตอนนี้ ขยายส่วน แบ่งตามหน้ากาก บน แยกข้อความ บานหน้าต่าง พิมพ์มาสก์ในช่อง ป้อนตัวคั่น แล้วคลิก แยก :

    ผลลัพธ์จะมีลักษณะดังนี้:

    หมายเหตุ การแยกสตริงด้วยมาสก์เป็น คำนึงถึงตัวพิมพ์เล็กและใหญ่ ดังนั้น อย่าลืมพิมพ์อักขระในมาสก์ให้ตรงตามที่ปรากฏในสตริงต้นฉบับ

    ข้อดีที่สำคัญของวิธีนี้คือความยืดหยุ่น ตัวอย่างเช่น หากสตริงเดิมทั้งหมดมีค่าวันที่และเวลา และคุณต้องการให้ปรากฏในคอลัมน์อื่น ให้ใช้มาสก์นี้:

    * *ERROR:*Exception:*

    แปลเป็นภาษาอังกฤษธรรมดา มาสก์สั่งให้ Add-in แบ่งสตริงต้นฉบับออกเป็น 4 ส่วน:

    • อักขระทั้งหมดก่อนช่องว่างที่ 1 ที่พบในสตริง

    Michael Brown เป็นผู้ที่ชื่นชอบเทคโนโลยีโดยเฉพาะและมีความหลงใหลในการทำให้กระบวนการที่ซับซ้อนง่ายขึ้นโดยใช้เครื่องมือซอฟต์แวร์ ด้วยประสบการณ์กว่าทศวรรษในอุตสาหกรรมเทคโนโลยี เขาได้ฝึกฝนทักษะของเขาใน Microsoft Excel และ Outlook รวมถึง Google ชีตและเอกสาร บล็อกของ Michael ทุ่มเทให้กับการแบ่งปันความรู้และความเชี่ยวชาญของเขากับผู้อื่น โดยให้คำแนะนำและแบบฝึกหัดที่ทำตามได้ง่ายเพื่อปรับปรุงผลิตภาพและประสิทธิภาพ ไม่ว่าคุณจะเป็นมืออาชีพที่ช่ำชองหรือมือใหม่ บล็อกของ Michael นำเสนอข้อมูลเชิงลึกอันมีค่าและคำแนะนำที่เป็นประโยชน์สำหรับการใช้ประโยชน์สูงสุดจากเครื่องมือซอฟต์แวร์ที่จำเป็นเหล่านี้