Chủ Nhật, 8 tháng 12, 2013

Hàm chuẩn hóa chuỗi trong Excel

(Thủ thuật VBA Excel)

- Bạn vừa Copy một danh sách học viên từ trên mạng vào Excel, tuy nhiên khi Copy vào Excel thì danh sách này xuất hiện nhiều khoảng trắng ở đầu và cuối mỗi học viên. Ngoài ra các chữ cái đầu tiên ở phần họ đệm và tên vẫn là chữ thường. Bạn đã chuẩn hóa lại danh sách này bằng tay, tuy nhiên với cách làm thủ công này tốn nhiều thời gian. Vậy có cách nào đó để có thể tự động xử lý chuẩn hóa toàn bộ danh sách này không?

Hôm nay Kênh phần mềm việt sẽ giới thiệu với các Bạn cách viết hàm chuẩn hóa trong Excel, hàm này sẽ thực hiện các công việc: xóa bỏ các ký tự trống ở đầu và cuối, Xóa bỏ từ 2 ký tự trống liên tiếp ở giữa các từ, Viết hoa chữ cái đầu tiên tại mỗi từ.


1. Khởi động Microsoft Excel
2. Nhấn ALT + F11 để bắt đầu Visual Basic Editor
Vào menu Inser\Module

3. Nhập toàn bộ đoạn mã sau vào
Function Chuanhoachuoi(str As String) As String
    Dim sChuoi As String
    Dim mlen As Long
    Dim i As Long
    'Neu chuoi =0 thi khong xu ly
    If Len(str) = 0 Then Exit Function
    'Xoa bo cac ky tu trang o dau va cuoi
    str = Trim(str)
    'Dem so ky tu chuoi
    mlen = Len(str)
 
    'Loai bo hai ki tu trong lien tiep
    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
        ' Chuyen cac ky tu dau tien mot tu sang chu hoa
        If Mid(str, i, 1) = " " Then
            sChuoi = sChuoi & " " & UCase(Mid(str, i + 1, 1))
            i = i + 1
        Else
            'Chuyen chu cai dau tien cua cau sang chu hoa
            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

Kích nút Save để lưu lại, bạn có thể xem thêm bài viết cách lưu file Excel khi chứa Macro hoặc hàm.

4. Quay trở lại màn hình Excel và sử dụng hàm vừa tạo
Có 2 cách để sử dụng hàm vừa tạo
- Cách 1:
+ Cú pháp: =Chuanhoachuoi(Chuỗi cần chuẩn hóa)
+ Ví dụ: =Chuanhoachuoi (“cong  hoa xa hoi  chu nghia viet nam”)
- Cách 2:
+Cú pháp: = Chuanhoachuoi (Địa chỉ ô cần chuyển)
+ Ví dụ: = Chuanhoachuoi (A2)

Nếu bạn nào sau khi đã tạo hàm xong nhưng khi sử dụng thì gặp phải trường hợp giá trị trả về #NAME? thì phải thực hiện theo các bước dưới đây nếu sử dụng Office 2007.

- Kích nút Office Button\Excel Options
- Chọn Trust Center\Trust Center Settings


- Chọn Macro Settings\Enable all macros (not recommended; potentially dangerous code can run)



Chọn OK

Hi vọng hàm chuẩn hóa chuỗi sẽ giúp ích các bạn nhiều trong công việc.

Không có nhận xét nào:

Đăng nhận xét

Các con vật cho bé học, video dạy bé học nói, các con vật thân quen,các con vật giúp bé học nói