-
Hàm Tách Tên, Họ trong Access
Noname > 15-08-10, 01:11 PM
Mình xin giới thiệu 1 hàm tự tách tên, họ trong Access:
Mã:Public Function Split(Ten As String, Kieu As Byte)
Dim bytSpace As Byte
bytSpace = InStrRev(Ten, " ", -1)
If bytSpace = 0 Then
Split = Ten
Exit Function
End If
If Kieu = 0 Then
Split = Right(Ten, Len(Ten) - bytSpace)
Else
Split = Left(Ten, bytSpace - 1)
End If
End Function
Chú Thích: Hàm này dùng hiệu quả trong việc tách tên họ. Truyền đối số như sau:
Ten: Tên đầy đủ ( fullname)
Kiểu: 0 : Tách Tên, 1 Tách Họ
Ví Dụ:
Name=Phạm Thị Mỹ Hạnh
msgbox Split(Name,0) => Hạnh
msgbox Split(Name,1) => Phạm Thị Mỹ -
RE: Hàm Tách Tên, Họ trong Access
thiennamlong > 01-08-14, 10:05 PM
Mình chỉ muốn tách họ không có chữ lót tên đi kèm theo thỉ hàm này sửa lại như thế nào các bạn nhỉ ? -
RE: Hàm Tách Tên, Họ trong Access
Xuân Thanh > 02-08-14, 09:48 PM
(01-08-14, 10:05 PM)thiennamlong Đã viết: Mình chỉ muốn tách họ không có chữ lót tên đi kèm theo thỉ hàm này sửa lại như thế nào các bạn nhỉ ?
Mã PHP:Function TachHoTen(HoTen As String, Kieu As Byte) As String
Dim i As Byte
HoTen = Trim(HoTen)
For i = 1 To Len(HoTen)
If Mid(HoTen, i, 1) = " " Then
If Kieu = 0 Then TachHoTen = Left(HoTen, i - 1) Else TachHoTen = Right(HoTen, Len(HoTen) - i)
Exit For
End If
Next
End Function
Sử dụng :
HoTen = Nguyễn Thị Lan Anh
TachHoTen(HoTen, 0) = Nguyễn
TachHoTen(HoTen, 1) = Thị Lan Anh
(Thích thì chiều thôi chứ thực ra thì......)
Nếu chỉ cần hàm tách lấy họ không thôi thì sửa lại như sau
Mã PHP:Function TachHo(HoTen As String) As String
Dim i As Byte
HoTen = Trim(HoTen)
For i = 1 To Len(HoTen)
If Mid(HoTen, i, 1) = " " Then
TachHo = Left(HoTen, i - 1)
Exit For
End If
Next
End Function
Sử dụng :
HoTen = Nguyễn Thị Lan Anh
TachHo(HoTen) = Nguyễn
Thân mến -
RE: Hàm Tách Tên, Họ trong Access
thiennamlong > 04-08-14, 09:23 AM
Cảm ơn bạn Xuân Thanh nhiều, hàm TachHoTen thì tôi dùng được, nhưng sao tôi không dùng được hàm TachHo nhỉ? Và tôi cũng thấy rằng lồng 2 hay 3 lần hàm Split vào nhau ta cũng tách được họ trong chuỗi họ tên. -
RE: Hàm Tách Tên, Họ trong Access
Xuân Thanh > 04-08-14, 04:57 PM
(04-08-14, 09:23 AM)thiennamlong Đã viết: Cảm ơn bạn Xuân Thanh nhiều, hàm TachHoTen thì tôi dùng được, nhưng sao tôi không dùng được hàm TachHo nhỉ? Và tôi cũng thấy rằng lồng 2 hay 3 lần hàm Split vào nhau ta cũng tách được họ trong chuỗi họ tên.
1/ Bạn xem lại, hàm vẫn chuẩn mà
2/ Bạn hỏi sửa hàm trên như thế nào thì tôi sửa dùm bạn đó thôi. Nếu dùng Split còn đơn giản nữa
Mã PHP:Function TachHo(HoTen As String) As String
Dim Ho As Variant
Ho = Split(HoTen, " ")
TachHo = Ho(0)
End Function
Thân mến