Định dạng ngày và tiền?

Thảo luận trong 'Ứng dụng Excel' bắt đầu bởi heroic, 20 Tháng ba 2006.

3,464 lượt xem

  1. heroic

    heroic Thành viên hoạt động

    Bài viết:
    56
    Đã được thích:
    0
    Nơi ở:
    vn
    Em đang thiết kế cái form nhập liệu nhưng khi em dùng Dtpicker để nhập ngày thì rất bất tiện.( Nó không tự nhảy vùng chuyển sang, khi ấn enter nó không nhảy đến mục tiếp theo) em đã sử chỉnh taboder. và cả textbox nhập tiền vô nữa nó không có dấu phân cách giữa hàng trăm, chục , đơn vị....

    Vậy
    1. Khi thiết kế trên form cho Ngày thì thường dùng như thế nào để có kết quả sẵn sàng và dễ nhập như các chương trình .../.../.........
    2. Trường nhập số lượng, hay tiền tệ thì định dạng trên textbox để có phân cách các hàng trăm, chục , đơn vị. (100.000 thay vì 100000) rất khó nhìn nhập đúng hay sai khi mình nhập.

    Các Pro giúp em việc này với!
     
    #1
  2. vfupv

    vfupv Thành viên hoạt động

    Bài viết:
    25
    Đã được thích:
    0
    Nơi ở:
    Thái Nguyên
    Bạn có thể tham khảo tại Textbox và VBA

    Vấn đề của bạn mình đã gặp phải và đã hỏi các cao thủ giúp đỡ tại mục Textbox và VBA của WKT. Bạn có thể tham khảo thêm để có câu trả lời cho mình.
     
    #2
  3. Bình_OverAC

    Bình_OverAC Over Abnormal / Crazy

    Bài viết:
    845
    Đã được thích:
    7
    Nơi ở:
    Nha Trang
    Chào bác heroic
    Vấn đề về số, và ngày như bác thì theo em biết có nhiều cao thủ làm rồi. Vấn đề về số em đã trả lời cho vfupv, nó chưa phải là cách tốt nhất nhưng em đang sài cái đó đó ạh.
    Vấn đề nhấn Enter nhảy sang control khác thì bác cũng dùng Key_press luôn. Nhưng trong bài này. Ascii của phím Enter là 13. Đó là đối với VB chứ đối với VBA thì không biết có gì khác không chứ, tôi đang sài Excel 2003. khi nhấn Ênter trong Textbox tự động nhảy sang control có Tap Order tiếp theo.
     
    #3
  4. QDuc

    QDuc Thành viên thân thiết

    Bài viết:
    254
    Đã được thích:
    18
    Nơi ở:
    Biển khơi
    Mã hóa & giải mã dữ liệu ngày tháng năm trong CSDL.

    Nếu bạn nào cần mã hóa dữ liệu cột chứa ngày tháng năm thì dùng tạm hàm này:
    Option Explicit
    Const Chuan = 1966
    Dim ii As Integer: Dim StrC As String
    Function MaNgay(Dat As Date) As String
    StrC = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    ii = Year(Dat) - Chuan: MaNgay = Mid(StrC, ii \ 3, 1)
    ii = 12 * (ii Mod 3) + Month(Dat): MaNgay = MaNgay & Mid(StrC, ii, 1)
    ii = Day(Dat): MaNgay = MaNgay & Mid(StrC, ii, 1)
    End Function
    Và khi cần thì dịch ngược lại bằng hàm vầy:
    Function CVNgay(Str1 As String) As Date
    Dim Nam As Integer, Thang As Integer, Ngay As Integer
    Dim StrCh As String
    Str1 = UCase$(Str1)
    StrCh = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    Thang = InStr(StrCh, Mid(Str1, 2, 1))
    If Thang < 13 Then Nam = 2 : If Thang > 24 Then Nam = 1
    Thang = Thang Mod 12
    Ngay = InStr(StrCh, Mid(Str1, 3))
    Nam = Nam + Chuan + (3 * InStr(StrCh, Left(Str1, 1)))
    CVNgay = DateSerial(Nam, Thang, Ngay)
    End Function
    Hàm này sử dụng hơn 100 năm bắt đầu từ Chuan.
    Có thể một số bạn hỏi làm chi mà lôi thôi vậy!
    Cái tiện lợi sẽ thấy khi CSDL chúng ta gần đầy trong ổ cứng; Khi đó báo cao, trích lọc cũng nhanh như thường (?). Xin các bạn cho í kiến!?
     
    Last edited: 26 Tháng sáu 2006
    #4

Chia sẻ trang này