なぜか質問を投稿すると反映されない。。 何かしら問題があってはじかれている??
VBAで12文字のランダム文字列を作成する
自動的にパスワードを作成したい。
文字数は12文字。
使用する文字は英字の大文字小文字、数字、記号。
そのうち、数字と記号は必ず1つ加える。
Function getRandomStr() As String
Const S_STR As String = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
Const S_INT As String = "0123456789"
Const S_SYM As String = "!#$%&()=<>?@*+"
Randomize
Dim result As String
'英字から10文字のランダム文字
Dim i As Integer
For i = 1 To 10
result = result + Mid(S_STR, Int(Len(S_STR) * Rnd + 1), 1)
Next
Dim pos As Integer
'数字を1つ加える
pos = Int(Len(result) * Rnd + 1)
result = Mid(result, 1, pos) & Mid(S_INT, Int(10 * Rnd + 1), 1) & Mid(result, pos + 1, 10 - pos)
'記号を1つ加える
pos = Int(Len(result) * Rnd + 1)
result = Mid(result, 1, pos) & Mid(S_SYM, Int(11 * Rnd + 1), 1) & Mid(result, pos + 1, 11 - pos)
getRandomStr = result
End Function
検索

コメントを残す