Excel

ランダムな文字列を生成する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 Scripts機能によってWeb版Officeの操作を自動化する

    前回、Ignite 2019で発表されたPower Automate(…

  2. Office関連

    格子状にガイドを追加するPowerPointマクロ

    前回の記事で、PowerPoint 2013で追加されたGuide、G…

  3. Office関連

    [リボン・カスタマイズ]ユーザー名により表示するメニューを切り替える。

    今回はリボンをカスタマイズして、ファイルを開いたユーザー名によって表示…

  4. Office関連

    選択範囲内で文字列検索を行うWordマクロ

    今日は選択範囲内で文字列検索を行うWordマクロについて考えてみます。…

  5. Office関連

    「入門レベルでは決して足りない実務に必須のスキルとは ExcelVBA 実戦のための技術」レビュー

    久しぶりにVBA参考書籍のレビューです。今回は沢内晴彦氏が執筆され…

コメント

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

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

Time limit is exhausted. Please reload CAPTCHA.

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

Translate

最近の記事

アーカイブ

PAGE TOP