Lấy chữ cái đầu trong họ – tên
Chào các anh chị,
Làm ơn chỉ giúp em xử lý vấn đề này với ạh.
Trong một ô họ tên, ví dụ "Mai Phương Thúy" em làm nào để có thể lấy ra được 3 chữ cái đầu trong mỗi chữ: M – Mai, P- Phương, T- Thúy.
Giúp em với nhé. Xin cảm ơn các anh chị.
Dungbko
Nếu ô C5 có chứa text "Mai Phương Thủy" thì mình sẽ lấy 3 chữ cái đầu bằng 3 công thức sau:
Chữ M – Mai:
=LEFT(C5,1)
Chữ P – Phương:
=MID(C5,FIND(" ",C5,1)+1,1)
Chữ T – Thuý:
=MID(C5,FIND(" ",C5,FIND(" ",C5,1)+1)+1,1)
Và cứ thế nếu còn chữ nào nữa.
Thân.
www.giaiphapexcel.com/diendan/threads/l%E1%BA%A5y-ch%E1%BB%AF-c%C3%A1i-%C4%91%E1%BA%A7u-trong-h%E1%BB%8D-t%C3%AAn.20182/
Khóa học SprinGO phù hợp
Kỹ năng giải quyết vấn đề hiệu quả
Mô tả Nội dung Đánh giá Tài nguyên KỸ NĂNG GIẢI QUYẾT VẤN ĐỀ HIỆU QUẢHiểu đúng vấn đề là một nửa của giải...
Xem khóa học
Dùng cho tên có 6 từ :
Po_pikachu đã dùng split rồi thì mình dùng thêm cái For nữa cho dễ hình dung :
Function Firstchar(Str As String) As String
Dim i As Byte
Str = Trim(Str): Firstchar = Left(Str, 1)
For i = 1 To Len(Str)
If Mid(Str, i, 1) = " " Then Firstchar = Firstchar + Mid(Str, i + 1, 1)
Next
End Function
Đó là UDF, là hàm tự tạo. Muốn sử dụng bạn phải cho nó vào thư viện hay trong module thi mới dùng được.
Copy đoạn code trên, bấm Alt+F11. Vào Insert, chọn module, ok
Doubleclick vào module, vào khung soạn thảo bên phải và paste đoạn code trên vào.
Thoát ra ngoài màn hình excel bình thường thì ta có thể sử dụng được .
VD tại ô B1 : =Firstchar(A1)
Xin được góp vui thêm 1 cách không dùng vòng lặp.
Lại là "Đệ quy" —> Hôm trước đã nghĩ ra sẽ làm theo hướng này nhưng vụ đệ quy này xem ra vẫn chưa thông lắm
Cảm ơn bạn!
Dùng 1 trong những hàm kể từ bài #4,
và thêm như vầy:
=RIGHT(ChuCaiDau(A1), 1)
Hoặc là viết hàm mới:
Function KTDauCuaTen(byVal s As String) As String
KTDauCuaTen = MID(s, InStrRev(s & " ", " "), 1)
End Function
Thử code này.
Đây, có tuỳ chọn tách theo lý tự gì luôn nha.
Dán vào module rồi sử dụng hàm nha bác, hàm là =T_Tachchuoi("Chuỗi cần tách", "tách tại ký tự gì, bỏ trống là tách từng ký tự")
Tham khảo . . .
Thêm một cách nửa không biết được không.
Nếu dùng excel 365 thì hàm giải quyết được mặc dù nó hơi dài.
2983