関数・メソッド

指定した文字を繰り返し入力する【String関数】【ExcelVBA】

構文

String(Number , Character)  

Number ・・・ 繰り返し入力したい回数 [省略不可] Character・・・繰り返し入力した文字列 [省略不可] 戻り値・・・・指定回数分の文字列を返します
String関数指定した文字を繰り返し入力します。
半角スペースの繰り返したい場合はSpace関数があります。

String関数のサンプルコード

Public Sub test_String()
    
    '■「a」を 5回 繰り返す
    MsgBox String(5, "a") '「aaaaa」
    
    '■「a」を 0回 繰り返す
    MsgBox String(0, "a")  '「」(空白の文字列)

    '■マイナスの数値や文字列を入力するとエラーが発生する
    '実行時エラー 5 プロシージャの呼び出し、または引数が不正です
    MsgBox String(-5, "a")
    '実行時エラー 13 型が一致しません
    MsgBox String("a", "a")

End Sub

注意点

  • 複数文字指定された場合は、先頭文字のみ繰り返しします。
    ※例 String(5 , "abc") と String(5 , "a")は同じ結果です。
  • String関数は VBAコードの可読性を上げる為に使用します。
    「"00000" & abc」より「String( 5 , "0" ) & abc」の方が可読性は高いですよね。
    ※もちろんマジックナンバーの5ではなく定数を使用するとメンテナンスにも優れます。
  • または、セルの値や表示の体裁を整える(固定長ファイルに0で埋める)場合に使用します。
    ※使用例 0埋めして桁数を揃える(Format関数/Right関数)

関連記事

0埋めして桁数を揃える(Format関数/Right関数)
文字列の前後を空白埋めで 桁数を揃える(Space関数/Right関数)
半角空白スペースを繰り返し入力する【Space関数】【ExcelVBA】

 

コメント

タイトルとURLをコピーしました