VBAでIE操作に役立つ名前(かな・ローマ字)をランダムで自動生成「nameGet 」

VBAのIE(InternetExplorer)制御に便利なサブルーチンを紹介しています。

「nameGetサブルーチン」の詳しい説明は以下よりご確認ください。
名前をランダムで自動生成「nameGet」の解説
Function nameGet(Optional sex As String) As Collection

    Dim objIE91 As InternetExplorer
    Dim objTag91 As Object
    Dim minInt As Integer, maxInt As Integer, LName As Integer, FName As Integer
    
    Dim arrName As New Collection
    
    '名前ページをIE(InternetExplorer)で起動
    Call ieView(objIE91, "http://www.vba-ie.net/code/namedata.html", False)
    
    If sex = "" Then
        minInt = 1
        maxInt = 100
    ElseIf sex = "男" Then
        minInt = 1
        maxInt = 50
    ElseIf sex = "女" Then
        minInt = 51
        maxInt = 100
    End If
    
    LName = makeRndInt(1, 100)
    FName = makeRndInt(minInt, maxInt)

    Set objTag91 = objIE91.document.getElementsByTagName("table")(0)

    With objTag91.Rows(LName)
        arrName.Add .Cells(0).innerText, "L"   '姓(漢字)
        arrName.Add .Cells(1).innerText, "LH"   '姓(かな)
        arrName.Add StrConv(.Cells(1).innerText, vbKatakana), "LKW"   '姓(カナ[全角])
        arrName.Add StrConv(StrConv(.Cells(1).innerText, vbKatakana), vbNarrow), "LKN"   '姓(カナ[半角])
        arrName.Add StrConv(StrConv(.Cells(2).innerText, vbWide), vbUpperCase), "LAWU"   '姓(ローマ字[全角][大文字])
        arrName.Add StrConv(.Cells(2).innerText, vbUpperCase), "LAWL"    '姓(ローマ字[全角][小文字])
        arrName.Add StrConv(.Cells(2).innerText, vbWide), "LANU"    '姓(ローマ字[半角][大文字])
        arrName.Add .Cells(2).innerText, "LANL"    '姓(ローマ字[半角][小文字])
    End With
    
    With objTag91.Rows(FName)
        arrName.Add .Cells(3).innerText, "F"    '名(漢字)
        arrName.Add .Cells(4).innerText, "FH"    '名(かな)
        arrName.Add StrConv(.Cells(4).innerText, vbKatakana), "FKW"   '名(カナ[全角])
        arrName.Add StrConv(StrConv(.Cells(4).innerText, vbKatakana), vbNarrow), "FKN"   '名(カナ[半角])
        arrName.Add StrConv(StrConv(.Cells(5).innerText, vbWide), vbUpperCase), "FAWU"   '名(ローマ字[全角][大文字])
        arrName.Add StrConv(.Cells(5).innerText, vbUpperCase), "FAWL"    '名(ローマ字[全角][小文字])
        arrName.Add StrConv(.Cells(5).innerText, vbWide), "FANU"     '名(ローマ字[半角][大文字])
        arrName.Add .Cells(5).innerText, "FANL"    '名(ローマ字[半角][小文字])
    End With
    
    Set nameGet = arrName

    'IEオブジェクトを閉じる
    objIE91.Quit


End Function

こちらは戻り値が必要ですので、functionプロシージャで対応しています。引数には「性別」の1つが設定されています。以下が引数の詳細になります。

nameGet([性別])
構文nameGet([sex])
引数名データ型内容値の事例初期値省略
sexString性別文字列"男","女"
戻り値
データ配列key命名ルール内容
姓(漢字)LLastNameLastName(姓)の頭文字をkey設定。
姓(かな)LHLastName HiraganaLastName(姓),Hiragana(ひらがな)の頭文字をkey設定。
姓(カナ[全角])LKWLastName Ktakana WideLastName(姓),Katanaka(カタカナ),Wide(全角)の頭文字をkey設定。
姓(カナ[半角])LKNLastName Ktakana NarrowLastName(姓),Katanaka(カタカナ),Narrow(半角)の頭文字をkey設定。
姓(ローマ字[全角][大文字])LAWULastName Alphabet Wide UpperLastName(姓),Alphabet(ローマ字),Wide(全角),Upper(大文字)の頭文字をkey設定。
姓(ローマ字[全角][小文字])LAWLLastName Alphabet Wide LowerLastName(姓),Alphabet(ローマ字),Wide(全角),Lower(小文字)の頭文字をkey設定。
姓(ローマ字[半角][大文字])LANULastName Alphabet Narrow UpperLastName(姓),Alphabet(ローマ字),Wide(全角),Upper(大文字)の頭文字をkey設定。
姓(ローマ字[半角][小文字])LANLLastName Alphabet Narrow LowerLastName(姓),Alphabet(ローマ字),Wide(全角),Lower(小文字)の頭文字をkey設定。
名(漢字)FFirstNameFirstName(名)の頭文字をkey設定。
名(かな)FHFirstName HiraganaFirstName(名),Hiragana(ひらがな)の頭文字をkey設定。
名(カナ[全角])FKWFirstName Ktakana WideFirstName(名),Katanaka(カタカナ),Wide(全角)の頭文字をkey設定。
名(カナ[半角])FKNFirstName Ktakana NarrowFirstName(名),Katanaka(カタカナ),Narrow(半角)の頭文字をkey設定。
名(ローマ字[全角][大文字])FAWUFirstName Alphabet Wide UpperFirstName(名),Alphabet(ローマ字),Wide(全角),Upper(大文字)の頭文字をkey設定。
名(ローマ字[全角][小文字])FAWLFirstName Alphabet Wide LowerFirstName(名),Alphabet(ローマ字),Wide(全角),Lower(小文字)の頭文字をkey設定。
名(ローマ字[半角][大文字])FANUFirstName Alphabet Narrow UpperFirstName(名),Alphabet(ローマ字),Wide(全角),Upper(大文字)の頭文字をkey設定。
名(ローマ字[半角][小文字])FANLFirstName Alphabet Narrow LowerFirstName(名),Alphabet(ローマ字),Wide(全角),Lower(小文字)の頭文字をkey設定。

「sex」は任意項目です。「sex」には、男性もしくは女性の名前を取得したい場合に設定します。「」を指定すると男性の名前が、「」を指定すると女性の名前が、指定しない場合は男性・女性のどちらかの名前が取得されます。