Office関連

ランダムな文字列を生成するVBAマクロ

文字数を指定して0-9,A-Zまでのランダムな文字列を生成するマクロです。
別の処理で使う予定だったのですが、結局使う機会が無くなってしまったのでメモとして残しておきます。

Option Explicit

Public Sub Sample()
  Debug.Print MakeRndStr(100)
End Sub

Private Function MakeRndStr(ByVal LenNum As Long) As String
'0-9,A-Zまでのランダムな文字列を生成
  Dim ret As String
  Dim num As Integer
  
  ret = "" '初期化
  Do
    num = RndScope(48, 90)
    Select Case num
      Case 58 To 64
      Case Else
        ret = ret & ChrW(num)
    End Select
  Loop Until Len(ret) >= LenNum
  MakeRndStr = ret
End Function

Private Function RndScope(ByVal MinNum As Long, MaxNum As Long) As Integer
'指定した範囲の乱数を生成
  Dim ret As Integer
  
  Randomize
  ret = Int(Rnd() * (MaxNum - MinNum + 1) + MinNum)
  RndScope = ret
End Function

関連記事

  1. Office関連

    Unicodeブロックを元に指定した文字が平仮名なのかカタカナなのか漢字なのかを判別するVBAマクロ…

    以前書いた「ルビ(ふりがな)を一括設定するWordマクロ」記事で使った…

  2. Office関連

    Word 2013の「個人用テンプレート」はどこ?

    Word 2010では、から「個人用テンプレート」(カスタム テンプレ…

  3. Office アドイン

    [Office用アプリ]ユーザー設定を保存する。

    ※ この情報はOffice 2013 カスタマー プレビュー版を元にし…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

Time limit is exhausted. Please reload CAPTCHA.

最近の記事

アーカイブ

RapidSSL_SEAL-90x50
PAGE TOP