| 
    
     |  | ▼初心者 さん: 
 >生成されるパスワードに数字を含めたいのですが、
 >どのようにすれば良いでしょうか?
 
 
 これは
 >' 文字種類
 >kind = MenuSheet.Range("KIND").Value
 >Select Case kind
 >
 >Case "英字": chars = "abcdefghijkmnpqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
 >Case "数字": chars = "0123456789"
 >Case "記号": chars = "!#$%&@?\+-_"
 >Case Else: chars = "abcdefghijkmnpqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!#$%&@?\+-_"
 >
 >End Select
 
 文字種類が 「英字」とか「記号」だったら、何回作っても数字は混じって
 こないから、文字種類が
 >Case Else
 のばあいを言ってるんですよね?
 
 そのばあいだったら、数字が入るまでパスワード生成を繰り返せばいいのでは?
 
 For j = 1 To num
 password = Space$(cols) 'パスワードの桁数分のスペース
 Randomize
 
 k = 0
 Do
 For i = 1 To cols
 pointer = Int(Rnd * upper) + 1
 Mid(password, i, 1) = Mid(chars, pointer, 1)
 Next
 k = k + 1
 Loop Until password Like "*#*"
 
 With PasswordSheet.Cells(j + 1, 1)
 .Range("A1").Value = j
 .Range("B1").Value = password
 .Range("C1").Value = k  '参考のため 繰り返した回数
 End With
 
 Next
 
 
 |  |