Trang 1 của 3 123 CuốiCuối
Kết quả 1 đến 10 của 23

Chủ đề: Nhờ a/c viết hàm tạo kí tự ngẫu nhiên

  1. #1
    linhvnpt Guest

    Nhờ a/c viết hàm tạo kí tự ngẫu nhiên

    Chào a/c !
    Nhờ a/c viết dùm e hàm tạo chuỗi kí tự ngẫu nhiên với 2 điều kiện sau:
    - Bao gồm kí tự là chữ ngẫu nhiên trong chuỗi , ngẫu nhiên chữ thường và hoa
    - Chuỗi kí tự ngẫu nhiên số lượng kí tự trong khoảng từ 5 đến 7 kí tự
    e cảm ơn nhiều ạ !

  2. #2
    Ngày tham gia
    Feb 2014
    Bài viết
    0
    1 cách khác để bạn tham khảo: Xài hàm tự tạo sau đây:

    Mã nguồn PHP:
    Function ChuoiNgau() Dim DD As Byte, Tmp As Byte Dim Chu As String Randomize DD = 5 + 4 * Rnd() \ 1 Do Tmp = 48 + 42 * Rnd() If Tmp < 65 Then If Tmp > 57 Then Tmp = Tmp - 8 ChuoiNgau = ChuoiNgau & CStr(Chr(Tmp)) ElseIf Tmp > 64 Then ChuoiNgau = ChuoiNgau & Chr(Tmp) End If If Len(ChuoiNgau) = DD Then Exit Function Loop End Function  

  3. #3
    hoahuongduong Guest
    Thay đổi một chút
    Function ChuoiNgau()
    Dim DD As Byte, Tmp As Byte
    Dim Chu As String

    Randomize
    DD = 5 + 3 * Rnd() \ 1
    Do
    Tmp = 48 + 74 * Rnd()
    If Tmp < 58 Then
    ChuoiNgau = ChuoiNgau & Chr(Tmp)
    ElseIf (Tmp > 64 And Tmp < 91) Or Tmp > 96 _
    Then ChuoiNgau = ChuoiNgau & Chr(Tmp)
    End If
    If Len(ChuoiNgau) = DD Then Exit Function
    Loop
    End Function

  4. #4
    linht1106k1 Guest
    Trích dẫn Gửi bởi lenongree
    CT này tại A1!!!!!!

    <div class="bbcode_container">
    <div class="bbcode_description">Code:
    </div>
    </div>
    làm thử thấy khả năng có 5 ký tự quá nhỏ

  5. #5
    Menbro102015 Guest
    Trích dẫn Gửi bởi HieuCD
    làm thử thấy khả năng có 5 ký tự quá nhỏ
    Muốn tỷ lệ 5 kí tự tăng lên cũng dễ mà, mình chỉnh CT lại!!!!

    Mã:
    A1==CHOOSE(RANDBETWEEN(1,3),CHAR(RANDBETWEEN(65,90)),RANDBETWEEN(0,9),CHAR(RANDBETWEEN(97,122)))&CHOOSE(RANDBETWEEN(1,3),CHAR(RANDBETWEEN(65,90)),RANDBETWEEN(0,9),CHAR(RANDBETWEEN(97,122)))&CHOOSE(RANDBETWEEN(1,3),CHAR(RANDBETWEEN(65,90)),RANDBETWEEN(0,9),CHAR(RANDBETWEEN(97,122)))&CHOOSE(RANDBETWEEN(1,3),CHAR(RANDBETWEEN(65,90)),RANDBETWEEN(0,9),CHAR(RANDBETWEEN(97,122)))&CHOOSE(RANDBETWEEN(1,3),CHAR(RANDBETWEEN(65,90)),RANDBETWEEN(0,9),CHAR(RANDBETWEEN(97,122)))&CHOOSE(RANDBETWEEN(1,10),CHAR(RANDBETWEEN(65,90)),RANDBETWEEN(0,9),"",CHAR(RANDBETWEEN(97,122)),"","","","","","","")&CHOOSE(RANDBETWEEN(1,10),CHAR(RANDBETWEEN(65,90)),RANDBETWEEN(0,9),"",CHAR(RANDBETWEEN(97,122)),"","","","","","","")&CHOOSE(RANDBETWEEN(1,10),CHAR(RANDBETWEEN(65,90)),RANDBETWEEN(0,9),"",CHAR(RANDBETWEEN(97,122)),"","","","","","","")

  6. #6
    tuyenco1011 Guest
    cảm ơn a/c đã nhiệt tình giúp đỡ ạ
    e có 1 chút thay đổi trong điều kiện là trong chuỗi từ 5-7 kí tự là chữ ko có số, và các chữ sẽ ngẫu nhiên chữ thường và chữ hoa trong chuỗi ạ, nhờ a/c viết dùm hàm này

  7. #7
    honghoa Guest
    Trích dẫn Gửi bởi lala_qn
    cảm ơn a/c đã nhiệt tình giúp đỡ ạ
    e có 1 chút thay đổi trong điều kiện là trong chuỗi từ 5-7 kí tự là chữ ko có số, và các chữ sẽ ngẫu nhiên chữ thường và chữ hoa trong chuỗi ạ, nhờ a/c viết dùm hàm này
    cứ theo các công thức trên, và bạn tự sửa lại thì sẽ được

  8. #8
    thomtomtit Guest
    Trích dẫn Gửi bởi lenongree
    Muốn tỷ lệ 5 kí tự tăng lên cũng dễ mà, mình chỉnh CT lại!!!!

    <div class="bbcode_container">
    <div class="bbcode_description">Code:
    </div>
    </div>
    Bây giờ khả năng 8 ký tự bị hơi ít

  9. #9
    muabui Guest
    Public Function chuoi()
    n = Application.WorksheetFunction.RandBetween(5, 8)
    i = 1
    Dim text, texti As String
    Do Until i > n
    u = Application.WorksheetFunction.RandBetween(0, 2)
    If u = 0 Then
    texti = Application.WorksheetFunction.RandBetween(0, 9)
    Else
    texti = Chr(Application.WorksheetFunction.RandBetween(65, 90))
    End If
    text = text & texti
    i = i + 1
    Loop
    chuoi = text
    End Function

  10. #10
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Góp thêm một cách ...
    Để gọn công thức, đặt name A:
    =MID("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",RANDBE TWEEN(1,36),1)
    Công thức ngẫu nhiên:
    =A&A&A&A&A&CHOOSE(RANDBETWEEN(1,4),"",A,A&A,A&A&A )

Trang 1 của 3 123 CuốiCuối

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •