Làm thế nào để chuyển đổi chuỗi văn bản sang chữ hoa và chữ thường trong Excel?
Trong Excel, bạn có thể áp dụng chức năng Thích hợp để chuyển đổi chuỗi văn bản thành chữ hoa / thường một cách dễ dàng, nhưng đôi khi, bạn cần loại trừ một số từ cụ thể khi chuyển đổi các chuỗi văn bản thành chữ hoa đúng như hình minh họa sau. Bài viết này, tôi sẽ nói về một số thủ thuật nhanh chóng để giải quyết công việc này trong Excel.
Chuyển đổi chuỗi văn bản thành chữ hoa và chữ thường bằng cách sử dụng công thức
Chuyển đổi chuỗi văn bản thành chữ hoa và chữ thường bằng cách sử dụng công thức
Có thể công thức sau có thể giúp bạn giải quyết công việc này một cách nhanh chóng, vui lòng thực hiện như sau:
Nhập công thức này:
= LÊN (LEFT (A2)) & MID (TRIM (SUBSTITUTE (SUBSTITUTE (SUBSTITUTE (SUBSTITUTE ("" & PROPER (A2) & "", "Of", "of"), "A", "a"), "Là "," là ")," Hoa Kỳ "," Hoa Kỳ ")), 2, LEN (A2)) vào một ô mà bạn muốn lấy kết quả, sau đó kéo chốt điền để điền vào công thức này và các chuỗi văn bản đã được chuyển đổi thành chữ hoa và các ngoại lệ cụ thể, xem ảnh chụp màn hình:
Chú thích: Trong công thức trên, A2 là ô bạn muốn chuyển đổi, “Của”, “A”, “Là”, “Usa” là những từ viết hoa bình thường sau khi chuyển đổi, “Of”, “a”, “is”, “USA” là những từ bạn muốn loại trừ khỏi trường hợp thích hợp. Bạn có thể thay đổi chúng theo nhu cầu của mình hoặc thêm các từ khác bằng chức năng SUBSTITUTE.
Chuyển đổi chuỗi văn bản thành chữ hoa chữ thường thích hợp với các ngoại lệ bằng cách sử dụng mã VBA
Nếu công thức trên hơi khó hiểu và cần thay đổi theo nhu cầu của bạn, tại đây, bạn cũng có thể áp dụng mã VBA để hoàn thành tác vụ này. Vui lòng thực hiện theo từng bước sau đây.
1. Giữ ALT + F11 phím để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.
2. Nhấp chuột Chèn > Mô-đunvà dán mã sau vào Cửa sổ mô-đun.
Mã VBA: chuyển đổi chuỗi văn bản thành trường hợp thích hợp với các ngoại lệ:
Sub CellsValueChange()
'Updateby Extendoffice
Dim xSRg As Range
Dim xDRg As Range
Dim xPRg As Range
Dim xSRgArea As Range
Dim xRgVal As String
Dim xAddress As String
Dim I As Long
Dim K As Long
Dim KK As Long
On Error Resume Next
xAddress = Application.ActiveWindow.RangeSelection.Address
Set xSRg = Application.InputBox("Original cells:", "KuTools For Excel", xAddress, , , , , 8)
If xSRg Is Nothing Then Exit Sub
Set xDRg = Application.InputBox("Output cells:", "KuTools For Excel", , , , , , 8)
If xDRg Is Nothing Then Exit Sub
Set xPRg = Application.InputBox("Cells to exclude:", "KuTools For Excel", , , , , , 8)
If xPRg Is Nothing Then Exit Sub
Set xDRg = xDRg(1)
For I = 1 To xSRg.Areas.Count
Set xSRgArea = xSRg.Areas.Item(I)
For K = 1 To xSRgArea.Count
xRgVal = xSRgArea(K).Value
If Not IsNumeric(xRgVal) Then
xRgVal = CorrectCase(xRgVal, xPRg)
xDRg.Offset(KK).Value = xRgVal
End If
KK = KK + 1
Next
Next
End Sub
Function CorrectCase(ByVal xRgVal As String, ByVal xPRg As Range) As String
Dim xArrWords As Variant
Dim I As Integer
Dim xPointer As Integer
Dim xVal As String
xPointer = 1
xVal = xRgVal
xArrWords = WordsOf(xRgVal)
For I = 0 To UBound(xArrWords)
xPointer = InStr(xPointer, " " & xVal, " " & xArrWords(I))
Debug.Print xPointer
Mid(xVal, xPointer) = CorrectCaseOneWord(CStr(xArrWords(I)), xPRg)
Next I
CorrectCase = xVal
End Function
Function WordsOf(xRgVal As String) As Variant
Dim xDelimiters As Variant
Dim xArrRtn As Variant
xDelimiters = Array(",", ".", ";", ":", Chr(34), vbCr, vbLf)
For Each xEachDelimiter In xDelimiters
xRgVal = Application.WorksheetFunction.Substitute(xRgVal, xEachDelimiter, " ")
Next xEachDelimiter
xArrRtn = Split(Trim(xRgVal), " ")
WordsOf = xArrRtn
End Function
Function CorrectCaseOneWord(xArrWord As String, xERg As Range) As String
With xERg
If IsError(Application.Match(xArrWord, .Cells, 0)) Then
CorrectCaseOneWord = Application.Proper(xArrWord)
Else
CorrectCaseOneWord = Application.VLookup(xArrWord, .Cells, 1, 0)
End If
End With
End Function
3. Sau đó nhấn F5 để chạy mã này và một hộp nhắc xuất hiện để nhắc bạn chọn các ô gốc bạn muốn chuyển đổi, xem ảnh chụp màn hình:
4. Và sau đó nhấp vào OK, chọn các ô mà bạn muốn xuất kết quả trong hộp bật ra, xem ảnh chụp màn hình:
5. Nhấp vào OKvà trong hộp thoại bật lên, hãy chọn văn bản bạn muốn loại trừ, xem ảnh chụp màn hình:
6. Và sau đó nhấp vào OK để thoát khỏi hộp thoại và tất cả các chuỗi văn bản đã được chuyển đổi thành chữ hoa chữ thường thích hợp nhưng loại trừ các từ được chỉ định, hãy xem ảnh chụp màn hình:
Công cụ năng suất văn phòng tốt nhất
Nâng cao kỹ năng Excel của bạn với Kutools for Excel và trải nghiệm hiệu quả hơn bao giờ hết. Kutools for Excel cung cấp hơn 300 tính năng nâng cao để tăng năng suất và tiết kiệm thời gian. Bấm vào đây để có được tính năng bạn cần nhất...
Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều
- Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
- Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
- Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!