Cách chuẩn hóa chuỗi văn bản khi nhấn phím Enter trong Excel
Bài viết này hướng dẫn chi tiết cách sử dụng các hàm Excel để chuẩn hóa chuỗi văn bản khi nhấn Enter. Hàm sẽ loại bỏ khoảng trắng thừa ở đầu và cuối chuỗi, giảm các khoảng trắng liên tiếp giữa các từ, đồng thời viết hoa chữ cái đầu tiên của mỗi từ, rất hữu ích khi nhập liệu trường họ tên.
Bước 1: Khởi động phần mềm Microsoft Excel.
Bước 2: Nhấn tổ hợp phím Alt + F11 để mở hộp thoại Microsoft Visual Basic for Applications. Sau đó, chọn Insert -> Module để tạo module mới.
Bước 3: Nhập toàn bộ đoạn mã sau vào hộp thoại hiện ra:
Function Chuanhoachuoi(str As String) As String Dim sChuoi As String Dim mlen As Long Dim i As Long If Len(str) = 0 Then Exit Function str = Trim(str) mlen = Len(str) For i = 1 To mlen If Mid(str, i, 1) = " " And Mid(str, i + 1, 1) = " " Then str = Replace(str, " ", " ") i = i - 1 End If Next For i = 1 To mlen If Mid(str, i, 1) = " " Then sChuoi = sChuoi & " " & UCase(Mid(str, i + 1, 1)) i = i + 1 Else If i = 1 Then sChuoi = UCase(Mid(str, 1, 1)) Else sChuoi = sChuoi & LCase(Mid(str, i, 1)) End If End If Next Chuanhoachuoi = sChuoi End Function
Bước 4: Sau khi nhập xong, chọn Save. Vì file chứa macro, Excel sẽ hỏi bạn có lưu macro không, hãy chọn Yes và nhấn Save để hoàn tất.
Bước 5: Chọn Sheet cần sử dụng hàm chuẩn hóa. Nhấp đúp vào Sheet 1 như hình minh họa.
Bước 6: Thiết lập sự kiện Change cho Sheet hiện tại. Trong phần General, chọn Worksheet, sau đó trong mục Declarations, chọn Change.
Bước 7: Nhập đoạn mã lệnh cho sự kiện Change.
Private Sub Worksheet_Change(ByVal Target As Range) Dim str1 As String If Not (Application.Intersect(Target, Range("$D:$D")) Is Nothing) Then str1 = Chuanhoachuoi(Target.Value) Target.Value = str1 End If End Sub
Lưu ý: Câu lệnh Range("$B:$B") áp dụng hàm chuẩn hóa chuỗi cho cột B. Nếu muốn áp dụng cho cột khác, bạn có thể thay đổi địa chỉ tương ứng.
- Để áp dụng hàm từ cột B đến cột C, sử dụng: Range("$B:$C").
- Để áp dụng hàm từ ô F9 đến F15 và từ H7 đến H19, sử dụng: Range("F9:F15, H7:H19").
- Để áp dụng hàm cho hai cột không liên tiếp, sử dụng: Range("$B:$B, $F:$F").
Bước 8: Quay lại file Excel và áp dụng hàm chuẩn hóa cho Sheet1 tại cột B.
- Tại cột B, nhập họ tên mà không viết hoa chữ cái đầu và để nhiều khoảng trắng giữa các từ.
- Khi nhấn Enter, hệ thống sẽ tự động viết hoa chữ cái đầu và loại bỏ khoảng trắng thừa.
Chúc bạn thực hiện thành công!
Có thể bạn quan tâm