Hỏi đáp : cách tách họ tên đệm lót những tên dài (3 chữ 4 chữ 5 chữ)

Liên hệ QC

bitun1991

Thành viên mới
Tham gia
20/6/18
Bài viết
35
Được thích
3
Chào các chuyên gia,

em đang vướng mắc làm sao có thể tách được tên dài 4 chữ 5 chữ
em muốn tách như mẫu ví dụ bên dưới mọi người viết giúp em 3 code này được ko ạ?
ví dụ

3 chữ: Nguyễn Thanh Tùng -> Nguyễn / Thanh / Tùng
4 chữ: Nguyễn Hoàng Thanh Tùng --> Nguyễn Hoàng/Thanh /Tùng
5 chữ: Nguyễn Hoàng Văn Thanh Tùng ---> Nguyễn Hoàng Văn /Thanh/Tùng

Tên thì trong cột sẽ ngẫu nhiên 3,4,5 chữ mình chỉ việc đánh vào là nó tự nhận biết và tách ra như mẫu trên.

có thể hàm sẽ ko sử dụng được nếu có vba thì mn cũng giúp em giải với nhé.



em cảm ơn
 
Chào các chuyên gia,

em đang vướng mắc làm sao có thể tách được tên dài 4 chữ 5 chữ
em muốn tách như mẫu ví dụ bên dưới mọi người viết giúp em 3 code này được ko ạ?
ví dụ

3 chữ: Nguyễn Thanh Tùng -> Nguyễn / Thanh / Tùng
4 chữ: Nguyễn Hoàng Thanh Tùng --> Nguyễn Hoàng/Thanh /Tùng
5 chữ: Nguyễn Hoàng Văn Thanh Tùng ---> Nguyễn Hoàng Văn /Thanh/Tùng

Tên thì trong cột sẽ ngẫu nhiên 3,4,5 chữ mình chỉ việc đánh vào là nó tự nhận biết và tách ra như mẫu trên.

có thể hàm sẽ ko sử dụng được nếu có vba thì mn cũng giúp em giải với nhé.



em cảm ơn
File đâu ta.Có 2 chữ với 1 chữ tính sao.
 
Chào các chuyên gia,

em đang vướng mắc làm sao có thể tách được tên dài 4 chữ 5 chữ
em muốn tách như mẫu ví dụ bên dưới mọi người viết giúp em 3 code này được ko ạ?
ví dụ

3 chữ: Nguyễn Thanh Tùng -> Nguyễn / Thanh / Tùng
4 chữ: Nguyễn Hoàng Thanh Tùng --> Nguyễn Hoàng/Thanh /Tùng
5 chữ: Nguyễn Hoàng Văn Thanh Tùng ---> Nguyễn Hoàng Văn /Thanh/Tùng

Tên thì trong cột sẽ ngẫu nhiên 3,4,5 chữ mình chỉ việc đánh vào là nó tự nhận biết và tách ra như mẫu trên.

có thể hàm sẽ ko sử dụng được nếu có vba thì mn cũng giúp em giải với nhé.



em cảm ơn
Thế nếu là
Hoàng Tùng
thì sao?
 
Chắc hiếm có ai tên nhiều hơn 6 chữ nên mình làm cái này. xem công thức ở cột B
 

File đính kèm

  • tach ho ten.xls
    41.5 KB · Đọc: 19
Tên của hai người này thì tách kiểu gì nhỉ?

Lê Hoàng Hiếu Nghĩa Đệ Nhất Thương Tâm Nhân

Đào Thị Long Lanh Kim Ánh Dương.
 
Tên của hai người này thì tách kiểu gì nhỉ?

Lê Hoàng Hiếu Nghĩa Đệ Nhất Thương Tâm Nhân

Đào Thị Long Lanh Kim Ánh Dương.
Tách ra kiểu như vầy:
Sọt Rác Đầy Khiến Bài Không / Bị / Chuyển
Chuyên Gia Đang Lúc Đói Bài Nên / Bất / Kể
 
đây thưa các bác rảnh nghĩ ra tên quá dài, nhiêu kí tự cũng được.
 

File đính kèm

  • tach ho ten.xls
    42.5 KB · Đọc: 22
Để loại bỏ ký tự trắng thừa, dùng hàm Trim của Excel thay cho Trim của VBA, không cần tốn thêm 1 vòng lặp
Nghĩa là sao ạ? Nếu chỉ trên excel thì chỉ tách bỏ trắng thừa nhưng k thể tách họ tên rồi thêm kí tự
 
Dùng hàm trim của Application.
Mã:
Public Function tach(s As String) As String
Dim i As Long, k
s = Application.Trim(s)
i = InStrRev(s, " ")
Do While i > 0 And k < 2
    Mid(s, i, 1) = "/"
    k = k + 1
   i = InStrRev(s, " ")
Loop
  tach = s
End Function
 
Dùng hàm trim của Application.
Mã:
Public Function tach(s As String) As String
Dim i As Long, k
s = Application.Trim(s)
i = InStrRev(s, " ")
Do While i > 0 And k < 2
    Mid(s, i, 1) = "/"
    k = k + 1
   i = InStrRev(s, " ")
Loop
  tach = s
End Function
Code này chỉ thay 2 dấu cách cuối cùng. Không đúng với yêu cầu của thớt. (*)

...ví dụ

3 chữ: Nguyễn Thanh Tùng -> Nguyễn / Thanh / Tùng
4 chữ: Nguyễn Hoàng Thanh Tùng --> Nguyễn Hoàng/Thanh /Tùng
5 chữ: Nguyễn Hoàng Văn Thanh Tùng ---> Nguyễn Hoàng Văn /Thanh/Tùng
...
Trường hợp 3 chữ: giữ lại dấu cách ở hai bên ký tự /
Trường hợp 4 chữ: giữ lại 1 dấu cách ở tên, nhưng không có dấu cách ở lót
Trường hợp 5 chữ: giữ lại 1 dấu cách ở lót, nhưng không có dấu cách ở tên

Làm việc với text cần chính xác 100%. Nhưng thớt thì khoái viết tắt cho nên diễn tả luôn thiếu sót. Phải qua vài lần hỏi đi hỏi lại mới ra đúng.

(*) Tôi chỉ đùa thôi. Ý tôi nói là code trên rất hiệu quả nhưng vì hiệu quả cho nên khó uyển chuyển nếu yêu cầu thay đổi.
 
cảm ơn các bác. giờ em mới biết gọi hàm trim kiểu này
 
Nếu mãi đến giờ này mới biết thì nên đi tìm học thêm về phạm vi (scope) của module.
vừa đúng em bị mắc 1 lệnh clearcontents ở sheet khác khi chạy event worksheetchange mà không hiểu tại sao. Giờ lại vỡ ra thêm cái nữa.
một phần là do em không chuyên về công việc excel hẳn. chỉ là vài thao tác khi liên kết với phần mềm khác nên độ sâu về mấy cái này chưa đủ. vậy nên em mới hay lên đây làm thử để tìm ra chỗ cần phải vỡ như bác chỉ đấy ạ. cảm ơn bác lần nữa.
 
em làm được rồi cm các anh
 
Web KT
Back
Top Bottom