Cho em hỏi cách cắt 2 chữ cuối của tên (2 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

ngohongtuvt

Thành viên mới
Tham gia
13/9/09
Bài viết
15
Được thích
0
Các anh cho em hỏi cách cắt 2 chữ cuối của một tên bất kỳ là như thế nào vậy ạ.
Ví dụ em tên Ngô Hồng Tú thì chỉ lấy 2 chữ cuối là Hồng Tú, tên Nguyễn Thị Vân Anh thì cũng lấy 2 chữ Vân Anh. Và sau khi cắt tên xong thì có hàm nào mà làm đều 2 biên của ký tự trong một cột không vậy mấy anh, ví dụ như sau:
Hồng Tú
Vân Anh
là canh đều 2 bên, đối với những chuỗi ký tự dài hơn ví dụ như Thành Nguyễn thì cũng canh đều 2 biên bằng với chữ Hồng Tú, Vân Anh
Em xin mấy anh giúp đỡ, em chân thành cám ơn
 
Các anh cho em hỏi cách cắt 2 chữ cuối của một tên bất kỳ là như thế nào vậy ạ.
Ví dụ em tên Ngô Hồng Tú thì chỉ lấy 2 chữ cuối là Hồng Tú, tên Nguyễn Thị Vân Anh thì cũng lấy 2 chữ Vân Anh. Và sau khi cắt tên xong thì có hàm nào mà làm đều 2 biên của ký tự trong một cột không vậy mấy anh, ví dụ như sau:
Hồng Tú
Vân Anh
là canh đều 2 bên, đối với những chuỗi ký tự dài hơn ví dụ như Thành Nguyễn thì cũng canh đều 2 biên bằng với chữ Hồng Tú, Vân Anh
Em xin mấy anh giúp đỡ, em chân thành cám ơn

Mình dùng code như sau : sử dụng như hàm bình thường, ví dụ : =TachTen(A1)
Xem File đính kèm.

PHP:
Option Explicit
Function TachTen(Chuoi As String) As String
    Dim i As Long
    Dim Mang As Variant
    Mang = Split(Chuoi, " ")
    i = UBound(Mang) - LBound(Mang)
    If i > 1 Then
        TachTen = Mang(i - 1) & " " & Mang(i)
    Else
        TachTen = Chuoi
    End If
End Function
Vì không thể dùng hàm để định dạng nên phần canh đều lề cho các ô mình vẫn chưa giải quyết được.
 

File đính kèm

Lần chỉnh sửa cuối:
Các anh cho em hỏi cách cắt 2 chữ cuối của một tên bất kỳ là như thế nào vậy ạ.
Ví dụ em tên Ngô Hồng Tú thì chỉ lấy 2 chữ cuối là Hồng Tú, tên Nguyễn Thị Vân Anh thì cũng lấy 2 chữ Vân Anh. Và sau khi cắt tên xong thì có hàm nào mà làm đều 2 biên của ký tự trong một cột không vậy mấy anh, ví dụ như sau:
Hồng Tú
Vân Anh
là canh đều 2 bên, đối với những chuỗi ký tự dài hơn ví dụ như Thành Nguyễn thì cũng canh đều 2 biên bằng với chữ Hồng Tú, Vân Anh
Em xin mấy anh giúp đỡ, em chân thành cám ơn
-------
Lấy 2 chữ cuối thì được rồi, nhưng căng đều 2 biên thì khó quá, số ký tự trong cột đều bằng nhau nhưng không thể căng đều biên được vì chữ M và chữ I có chiều ngang đâu có bằng nhau, mục đích này để làm gì?
 
chào bạn!
Căn đều thì ko khó nhưng đơn giản là nó ko đẹp. Bạn muốn căn đều 2 bên trước tiên bạn nháy kép vào cột để được độ rộng nhỏ nhất của cột, sau đó bạn dùng Distributed align để căn những ô khác bằng ô dài nhất là được (bạn nháy chuột phải vào thanh công cụ chọn custom.. vào format kéo biểu tượng Distributed align lên thanh công cụ để dùng)
Thân!
 
em cám ơn các anh đã giúp đỡ, và cho em hỏi thêm là đối với những tên có chữ Thị là chữ lót thì sẽ lấy luôn cả họ và tên, còn những tên khác có chữ lót không phải là Thị thì chỉ lấy tên và chữ lót thôi.
Ví dụ: Ngô Hồng Tú thì cắt ra thành Hồng Tú, còn Nguyễn Thị Lan thì vẫn giữ nguyên tên là Nguyễn Thị Lan
Có cách nào làm như vậy không các anh
Em chân thành cám ơn
 
em cám ơn các anh đã giúp đỡ, và cho em hỏi thêm là đối với những tên có chữ Thị là chữ lót thì sẽ lấy luôn cả họ và tên, còn những tên khác có chữ lót không phải là Thị thì chỉ lấy tên và chữ lót thôi.
Ví dụ: Ngô Hồng Tú thì cắt ra thành Hồng Tú, còn Nguyễn Thị Lan thì vẫn giữ nguyên tên là Nguyễn Thị Lan
Có cách nào làm như vậy không các anh
Em chân thành cám ơn
Bạn sử dụng fíle của anh PTLONG04X1 sau đó thêm:
=IF(ISERR(searh(" thị ",B2)),B2,tachten(B2))
Thân.
 
em đang xài file của anh Ba Tê, file của anh PTLONG0X1 em xài không được, mà ý của em là tên 3 chữ có chữ Thị thì mới giữ nguyên. Ví du: Nguyễn Thị Lan thì giữ nguyên là Nguyễn Thị Lan, còn Nguyễn Thị Vân Anh thì cắt thành Vân Anh. Tức là trước cái tên mà chữ lót là Thị thì giữ nguyên tên, còn trước cái tên chữ lót không phải là Thị thì lấy tên và chữ lót
Em chân thành cám ơn
 
Lần chỉnh sửa cuối:
file của anh PTLONG0X1 em xài không được

Sao vậy bạn, mình đưa file lên đó rồi mà, đã test chạy rồi mà.
À mình biết rồi, tại bạn chưa Enable macro --> Vào Tools\Macros\
Security
--> Chọn Medium, khởi động lại Excel, mở file của mình và chọn Enable Macro.
 
Lần chỉnh sửa cuối:
em đang xài file của anh Ba Tê, file của anh PTLONG0X1 em xài không được, mà ý của em là tên 3 chữ có chữ Thị thì mới giữ nguyên. Ví du: Nguyễn Thị Lan thì giữ nguyên là Nguyễn Thị Lan, còn Nguyễn Thị Vân Anh thì cắt thành Vân Anh. Tức là trước cái tên mà chữ lót là Thị thì giữ nguyên tên, còn trước cái tên chữ lót không phải là Thị thì lấy tên và chữ lót
Em chân thành cám ơn
Bạn dùng công thức này:
Mã:
=IF(ISERROR(SEARCH("Thị",A1)),TRIM(RIGHT(SUBSTITUTE(A1," ",REPT(" ",100)),200)),A1)
 
em cám ơn anh PTLONG nha, em xài được file của anh rồi. Nhưng mà cái mã này thêm vào thì lại làm không được
=IF(ISERR(searh(" thị ",B2)),B2,tachten(B2))
và công thức anh huuthang_bd bày
=IF(ISERROR(SEARCH("Thị",A1)),TRIM(RIGHT(SUBSTITUTE(A1," ",REPT(" ",100)),200)),A1)
thì hễ cái tên nào có thị là nó cũng giữ nguyên tên.
Ý của em là tên nào có chữ Thị phía trước cái tên như Nguyễn Thị Lan thì mới giữ nguyên tên, còn nếu như là Nguyễn Thị Vân Anh thì lấy Vân Anh thôi
Em cam on nhieu
 
Lần chỉnh sửa cuối:
em cám ơn anh PTLONG nha, em xài được file của anh rồi. Nhưng mà cái mã này thêm vào thì lại làm không được và công thức anh huuthang_bd bày thì hễ cái tên nào có thị là nó cũng giữ nguyên tên.
Ý của em là tên nào có chữ Thị phía trước cái tên như Nguyễn Thị Lan thì mới giữ nguyên tên, còn nếu như là Nguyễn Thị Vân Anh thì lấy Vân Anh thôi
Em cam on nhieu

Bạn tải lại file mới của mình ở đây, vẫn dùng bình thường =TachTen(A1)
 

File đính kèm

Lần chỉnh sửa cuối:
em cám ơn anh PTLONG nha, em xài được file của anh rồi. Nhưng mà cái mã này thêm vào thì lại làm không được và công thức anh huuthang_bd bày thì hễ cái tên nào có thị là nó cũng giữ nguyên tên.
Ý của em là tên nào có chữ Thị phía trước cái tên như Nguyễn Thị Lan thì mới giữ nguyên tên, còn nếu như là Nguyễn Thị Vân Anh thì lấy Vân Anh thôi
Em cam on nhieu
Vậy thì bạn sửa lại như thế này:
Mã:
=IF(ISERROR(SEARCH("Thị",TRIM(RIGHT(SUBSTITUTE(A1," ",REPT(" ",100)),200)))),TRIM(RIGHT(SUBSTITUTE(A1," ",REPT(" ",100)),200)),A1)
 
dạ em làm được rồi cám ơn các anh nhiều
 
Vậy thì bạn sửa lại như thế này:
Mã:
=IF(ISERROR(SEARCH("Thị",TRIM(RIGHT(SUBSTITUTE(A1," ",REPT(" ",100)),200)))),TRIM(RIGHT(SUBSTITUTE(A1," ",REPT(" ",100)),200)),A1)

Chào bạn, với công thức này, nếu có ai đó tên là "Trần Văn Thị" thì công thức sẽ cho ra kết quả là "Trần Văn Thị" --> Không đúng yêu cầu ("Văn Thị").
Mình nghĩ cần phải như thế này :
PHP:
=IF(ISERROR(SEARCH("thị",LEFT(RIGHT(SUBSTITUTE(A1," ",REPT(" ",100)),200),100))),TRIM(RIGHT(SUBSTITUTE(A1," ",REPT(" ",100)),200)),A1)
 
Chào bạn, với công thức này, nếu có ai đó tên là "Trần Văn Thị" thì công thức sẽ cho ra kết quả là "Trần Văn Thị" --> Không đúng yêu cầu ("Văn Thị").
Mình nghĩ cần phải như thế này :
PHP:
=IF(ISERROR(SEARCH("thị",LEFT(RIGHT(SUBSTITUTE(A1," ",REPT(" ",100)),200),100))),TRIM(RIGHT(SUBSTITUTE(A1," ",REPT(" ",100)),200)),A1)
Công thức của tôi, chỉ cần sửa "Thị" bằng "Thị " là được.
 
em xin cám ơn 2 anh huuthang và ptlong
 
Lần chỉnh sửa cuối:
hi anh huu thang và ptlong vidu tên nguyen văn thai huu và tên luu van an thì em can lay chữ huu và chữ an thì sao a
 
hi anh huu thang và ptlong vidu tên nguyen văn thai huu và tên luu van an thì em can lay chữ huu và chữ an thì sao a
Nếu bạn là người Việt thì viết tiếng Việt có dấu đầy đủ.
[INFO1]
Lưu ý khi gửi bài:
- Bài viết không dấu Tiếng Việt sẽ bị xóa
- Đặt tựa đề theo sát nội dung câu hỏi/ trả lời. Các bài viết có tựa đề chung chung như
Help me, cứu cứu, cứu em, gấp gấp,... sẽ bị xoá
- Giải thích/ mô tả câu hỏi càng chi tiết càng tốt
- Nên gửi thêm tập tin Excel kèm chú thích về câu hỏi nếu có
Xem thêm Nội Quy Diễn Đàn
[/INFO1]
------------
Câu hỏi của bạn chỉ cần tìm trên GPE này từ khóa "tách tên, họ" sẽ có "mênh mông".
 
Web KT

Bài viết mới nhất

Back
Top Bottom