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

[Office用アプリ]画像を挿入する。前のページ

[Office用アプリ]カレンダーから日付入力次のページ

関連記事

  1. Office関連

    Office 365 APIをVBAから呼び出す(3)

    前々回の記事でOffice 365とAzure ADの紐づけを、前回の…

  2. Excel

    Google TTSで文字列を読み上げるマクロ

    2012/02/09 追記:関連記事・Google翻訳…

  3. Office関連

    [Excel Services ECMAScript]ループによる入力と一括入力の処理時間について

    埋め込んだExcelワークブックのセルに対して、ループで1セルずつ入力…

  4. Excel

    Office クリップボードをマクロで操作する(MSAA)

    MSDNフォーラムに質問がありましたが、Office クリップボードを…

  5. Office関連

    テンプレートから簡単に新規文書を作成できるようにするWordテンプレート

    Wordで自作のテンプレートを利用して文書を作成するとき、2007以降…

コメント

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

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

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP