Các phương pháp tách họ và tên đề nghị post ở đây

Liên hệ QC
Bạn dùng hàm tự tạo (UDF) nhé.
Bước 1) Alt-F11 mở cửa sổ VBA editor, Insert/module. Copy đoạn code dưới đây vào:
PHP:
Option Explicit
Function Uname(cell As Range)
Dim i&, Ln As Range, st, ce As Range, max&
Set Ln = Range("C1:C" & cell.Row - 1)
st = Split(" " & cell.Value)
For i = 1 To UBound(st) - 1
    Uname = Uname & LCase(Left(st(i), 1))' LCase: Họ và Lót viết thường. Nếu muốn viết hoa thì dùng Ucase
Next
Uname = st(UBound(st)) & Uname
If WorksheetFunction.CountIf(Ln, Uname & "*") = 0 Then Exit Function
For Each ce In Ln
    st = Replace(ce, Uname, "")
    If Len(st) = 0 Then
        max = 1
    ElseIf IsNumeric(st) Then max = max + 1
    End If
Next
Uname = Uname & IIf(max = 0, "", max)
End Function

Bước 2) Đóng cửa sổ VBA.
Tại ô C2:
=uname(A2)
Kéo xuống
Save As file dạng "Excel Macro-Enable Workbook" (.xlsm)
Thanks bác nhiều. Hàm đã chạy tốt với ký tự không dấu.
 
Cảm ơn các Bác.
Từ hồi office 2013 nó đã có chức năng FlashFill, dùng công cụ này tách họ và tên thì cực nhanh luôn.
 
Web KT
Back
Top Bottom