วิธีแยกสตริงข้อความอย่างรวดเร็วตามกรณีใน Excel
ใน Excel เรามักจะแบ่งข้อความตามความกว้างคงที่หรือตัวคั่นด้วยฟังก์ชัน Text to Columns แต่คุณเคยพยายามแบ่งข้อความด้วยตัวพิมพ์ใหญ่และตัวพิมพ์เล็กหรือไม่? ตัวอย่างเช่นคุณมีรายการข้อมูลและคุณต้องแบ่งออกเป็นสองคอลัมน์ตามกรณี: คอลัมน์หนึ่งมีสตริงตัวพิมพ์เล็กและอีกคอลัมน์หนึ่งมีสตริงตัวพิมพ์ใหญ่ตามที่แสดงด้านล่างภาพหน้าจอ ฟังก์ชัน Text to Columns ไม่รองรับการดำเนินการนี้อย่างไรก็ตามฉันสามารถแนะนำเทคนิคในการแยกสตริงข้อความอย่างรวดเร็วตามกรณีใน Excel
แยกข้อความเป็นแถว / คอลัมน์โดยคั่นด้วย Kutools for Excel
แยกข้อความตามกรณีด้วย VBA
ใน Excel มีเพียงรหัสมาโครเท่านั้นที่จะแยกสตริงได้อย่างรวดเร็วตามตัวพิมพ์เล็กและตัวพิมพ์ใหญ่
1 กด Alt + F11 กุญแจเพื่อเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง
2 คลิก สิ่งที่ใส่เข้าไป > โมดูลแล้ววางโค้ดด้านล่างลงในช่องว่าง โมดูล ต้นฉบับ
VBA: แยกสตริงตามตัวพิมพ์
Sub CamelCase()
'UpdatebyExtendoffice20160711
Dim xRg As Range
Dim xTxt As String
Dim xCell As Range
Dim xCount As Long
On Error Resume Next
If ActiveWindow.RangeSelection.Count > 1 Then
xTxt = ActiveWindow.RangeSelection.AddressLocal
Else
xTxt = ActiveSheet.UsedRange.AddressLocal
End If
LInput:
Set xRg = Nothing
Set xRg = Application.InputBox("Select a range:", "Kutools for Excel", xTxt, , , , , 8)
If xRg Is Nothing Then Exit Sub
If xRg.Areas.Count > 1 Then
MsgBox "It not work in multiple selection", vbInformation, "Kutools for Excel"
GoTo LInput
End If
If xRg.Columns.Count > 1 Then
MsgBox "It only work in one column", vbInformation, "Kutools for Excel"
GoTo LInput
End If
On Error Resume Next
Application.ScreenUpdating = False
With CreateObject("vbscript.regexp")
.Pattern = "(\S)([A-Z]+[^A-Z])"
.Global = True
For Each xCell In xRg
xCount = .Execute(xCell).Count
If xCount Then xCell.Resize(, xCount + 1) = Split(.Replace(xCell, "$1" & Chr(1) & "$2"), Chr(1))
Next
End With
Application.ScreenUpdating = True
End Sub
3 กด F5 และกล่องโต้ตอบจะปรากฏขึ้นเพื่อเตือนให้คุณเลือกข้อความที่จะแยก ดูภาพหน้าจอ:
4 คลิก OKและข้อความที่เลือกได้ถูกแบ่งออกเป็นสองคอลัมน์และอีกคอลัมน์หนึ่งมีตัวพิมพ์เล็กและอีกอันมีตัวพิมพ์ใหญ่
แยกข้อความเป็นแถว / คอลัมน์โดยคั่นด้วย Kutools for Excel
ในหลาย ๆ กรณีคุณอาจต้องการแบ่งเซลล์ออกเป็นหลายแถวหรือหลายคอลัมน์ตามอักขระที่ระบุ ใน Excel ฟังก์ชัน Text to Columns ที่มีอยู่แล้วภายในจะช่วยให้คุณแปลงเซลล์เป็นคอลัมน์ได้โดยตรง แต่ไม่สามารถทำงานในการแปลงแถวได้ อย่างไรก็ตามกับ Kutools สำหรับ Excel - เครื่องมือที่สะดวกและมีประโยชน์คุณสามารถใช้งานได้ แยกเซลล์ ยูทิลิตี้เพื่อแยกสตริงออกเป็นแถวหรือคอลัมน์อย่างรวดเร็วตามตัวคั่นหรือความกว้างคงที่
Kutools สำหรับ Excel, ที่มีมากกว่า 300 ฟังก์ชั่นที่มีประโยชน์ทำให้งานของคุณง่ายขึ้น |
หลังจาก ติดตั้งฟรี Kutools สำหรับ Excel โปรดทำดังนี้:
1. เลือกเซลล์ที่คุณต้องการแยกแล้วคลิก Kutools > ผสานและแยก > แยกเซลล์. ดูภาพหน้าจอ:
2 ใน แยกเซลล์ ให้ตรวจสอบประเภทการแบ่งที่คุณต้องการในไฟล์ ชนิดภาพเขียน และไปตรวจสอบตัวคั่นเฉพาะที่คุณต้องการแยกตามในไฟล์ แยกตาม มาตรา. ดูภาพหน้าจอ:
3 คลิก Okกล่องโต้ตอบจะปรากฏขึ้นเพื่อเตือนให้คุณเลือกเซลล์เพื่อวางเนื้อหาแยก ดูภาพหน้าจอ:
4. หลังจากเลือกแล้วคลิก OKและเซลล์ที่เลือกถูกแบ่งออกเป็นแถวตามช่องว่าง ดูภาพหน้าจอ:
สุดยอดเครื่องมือเพิ่มผลผลิตในสำนักงาน
เพิ่มพูนทักษะ Excel ของคุณด้วย Kutools สำหรับ Excel และสัมผัสประสิทธิภาพอย่างที่ไม่เคยมีมาก่อน Kutools สำหรับ Excel เสนอคุณสมบัติขั้นสูงมากกว่า 300 รายการเพื่อเพิ่มประสิทธิภาพและประหยัดเวลา คลิกที่นี่เพื่อรับคุณสมบัติที่คุณต้องการมากที่สุด...
แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก
- เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
- เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
- เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!