Bỏ qua nội dung chính

 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 chữ thường thích hợp với các ngoại lệ bằng cách sử dụng mã VBA


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

🤖 Trợ lý AI của Kutools: Cách mạng hóa việc phân tích dữ liệu dựa trên: Thực thi thông minh   |  Tạo mã  |  Tạo công thức tùy chỉnh  |  Phân tích dữ liệu và tạo biểu đồ  |  Gọi các hàm Kutools...
Các tính năng phổ biến: Tìm, đánh dấu hoặc xác định các bản sao   |  Xóa hàng trống   |  Kết hợp các cột hoặc ô mà không làm mất dữ liệu   |   Vòng không có công thức hữu ích. Cảm ơn !
Siêu tra cứu: Nhiều tiêu chí VLookup    VLookup Nhiều Giá Trị  |   VLookup trên nhiều trang tính   |   Tra cứu mờ ....
Danh sách thả xuống nâng cao: Tạo nhanh danh sách thả xuống   |  Danh sách thả xuống phụ thuộc   |  Danh sách thả xuống nhiều lựa chọn ....
Trình quản lý cột: Thêm một số cột cụ thể  |  Di chuyển cột  |  Chuyển đổi trạng thái hiển thị của các cột ẩn  |  So sánh dãy và cột hữu ích. Cảm ơn !
Các tính năng nổi bật: Tiêu điểm lưới   |  Chế độ xem thiết kế   |   Thanh công thức lớn    Trình quản lý sổ làm việc & trang tính   |  Thư viện tài nguyên (Văn bản tự động)   |  Bảng chọn ngày   |  Kết hợp các bảng tính   |  Mã hóa/Giải mã ô    Gửi email theo danh sách   |  Siêu lọc   |   Bộ lọc đặc biệt (lọc in đậm/nghiêng/gạch ngang...) ...
15 bộ công cụ hàng đầu12 bản văn CÔNG CỤ (thêm văn bản, Xóa ký tự,...)   |   50 + Biểu đồ Các loại (Biểu đồ Gantt,...)   |   40+ Thực tế Công thức (Tính tuổi dựa trên ngày sinh,...)   |   19 chèn CÔNG CỤ (Chèn mã QR, Chèn ảnh từ đường dẫn,...)   |   12 Chuyển đổi CÔNG CỤ (Số thành từ, Chuyển đổi tiền tệ,...)   |   7 Hợp nhất & Tách CÔNG CỤ (Các hàng kết hợp nâng cao, Chia ô,...)   |   ... và nhiều hơn nữa

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...

Mô 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!
Comments (1)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
This would be amazing if only the Macro excluded the part of the sting in CAPS not the entire cell from the exceptions list.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations