Đánh giá chủ đề:
  • 1 Votes - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Hàm xử lý trường Họ Tên (Xóa bỏ khoảng trắng thừa, chữ hoa họ tên)
#1
Thật là phiền phức khi sau một thời gian trường họ tên trở nên hỗn loạn. Từ tên một người, có bé nhập liệu đã biến ra 5 - 7 tên khác nhau. Đơn giản là cái máy tính không hiểu tiếng người kia nhận diện bằng ký tự chứ không phải bằng âm thanh. Vì thế, "Trần Quốc Tuấn" khác với "Trần    Quốc Tuấn" và khác luôn "     trần quốc    Tuấn". Dù sau cũng còn may mắn vì nó cũng hiểu được "trần quốc Tuấn" cũng là "Trần Quốc Tuấn". Nhưng nếu nhìn vào trường họ tên với một lô, một lốc "trần Quốc tuấn", "lê quý đôn", "TRẦN bình Trọng" mà mặt mày vẫn vui vẻ, giọng nói vẫn nhẹ nhàng với cô bé nhập liệu kia mới lạ.
Có một cách để cô bé kia không làm bạn thất vọng là tặng ngay mấy cái code function vào ngay trường họ tên dưới đây:

1/Cắt bỏ các khoảng trắng thừa không mong muốn:

Mã PHP:
Function Xoakhoangtrang(DoanText As String)
    Dim XulyDoanText As String
    
        XulyDoanText 
RTrim(DoanText)
        
    
Do While InStr(XulyDoanText"  ") > 0
        XulyDoanText 
Left(XulyDoanTextInStr(XulyDoanText"  ") - 1) & Mid(XulyDoanTextInStr(XulyDoanText"  ") + 1)
    Loop
    
        Xoakhoangtrang 
Trim(XulyDoanText)
End Function 

Lúc này dù cô bé nhập liệu có vừa đánh một tay, vừa nhai ổi "  công               văn số   145 của Ủy    ban            " thì máy vẫn sửa thành "công văn số 145 của Ủy ban".

2/Xử lý đối với trường họ tên:
Nếu dữ liệu của bạn là trường họ tên. Xử lý bằng code dưới đây để chuyển chữ hoa đầu từ. (trong code đã có phần xử lý khoảng trắng)

Mã PHP:
Function HoVaTen(strHoTen As String)
    Dim XulystrHoTen As String
    Dim SoChu
SoLan As Integer
    
    XulystrHoTen 
RTrim(strHoTen)
    
    
Do While InStr(XulystrHoTen"  ") > 0
      XulystrHoTen 
Left(XulystrHoTenInStr(XulystrHoTen"  ") - 1) & Mid(XulystrHoTen_
                     InStr
(XulystrHoTen"  ") + 1)
    Loop
    
    XulystrHoTen 
Trim(XulystrHoTen)

    SoChu Len(XulystrHoTen)
    HoVaTen UCase(Left(XulystrHoTen1))
    
    
For SoLan 1 To SoChu 1
      
If Mid(XulystrHoTenSoLan1) = " " Then
        HoVaTen 
HoVaTen UCase(Mid(XulystrHoTenSoLan 11))
      Else
        HoVaTen HoVaTen LCase(Mid(XulystrHoTenSoLan 11))
      End If
    Next SoLan

End 
Function 

Chúng ta có thể đưa các Function trên vào Event Textbox_AfterUpdate() khi nhập dữ liệu hoặc tạo query để xử lý lại dữ liệu các table . Các đoạn code trên cũng xử lý tốt trên Excel. Code chỉ được test trên Office 2003 nên không chắc ăn khi chạy với các office khác. Đọc kỹ trước khi sử dụng. 007
Chữ ký của tranthanhan1962 Kết quả cuối cùng của một đời người, không phải bạn có được bao nhiêu tiền bạc, tài sản. Mà bạn còn bao nhiêu người bạn  thumbs up
ღღღღღTài sản của tranthanhan1962 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn maidinhdan , Noname , MatTroiNguQuen , Che_Guevara , hungle2006


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  [Hàm] Hàm buộc trường Email phải có @, không có ký tự đặc biệt maidinhdan 1 540 07-03-15, 03:32 PM
Bài mới nhất: maidinhdan

Chuyển nhanh:


User(s) browsing this thread: 1 Guest(s)
Diễn Đàn Thơ Văn Thi Ẩm Lâu|Nhà Hàng Sông Thơ