当サイトではアフィリエイトプログラムを利用して商品を紹介しています。

【VBA】Right関数で右(末尾)から文字を取り出す

【VBA】Right関数

VBARight は文字列の右側 (末尾) から指定数だけ文字を取り出す関数です。

Right(文字列, 取り出す文字の長さ)

第 1 引数に抽出対象となる文字列を渡します。
第 2 引数には取り出す文字の長さを指定します。
戻り値は Variant型(内部処理形式 String の Variant)です。

'[VBA] Right関数サンプルコード

Sub Right_Test()

  Dim mystr As String

  mystr = "右利きに比べて、左利きの人は少数派です"

  'Right関数で右から5文字を抜き出す
  Debug.Print Right(mystr, 5)

End Sub

'実行結果:
'少数派です

【VBA】RightB関数

VBA の RightB は文字列の右側(末尾)から指定バイト数だけ文字を取り出す関数です。

RightB(文字列, バイト数)

第 1 引数に抽出対象を指定します。
第 2 引数にはバイト数を指定します。
戻り値は Variant型となります。

'[VBA] RightB関数サンプルコード

Sub RightB_Test()

  Dim mystr As String

  mystr = "こばとはイチゴ大福が大好きです"

  'RightB関数で右から10バイト(5文字)を抜き出す
  Debug.Print RightB(mystr, 10)

End Sub
'実行結果:
'大好きです

【VBA】Right_2関数

Right と RightB を1つにまとめた Right_2関数 のコードを掲載しておきます。

'[VBA] Right_2関数
Function Right_2(str As String, n As Integer, _
Optional b As Boolean = False)
  If b = False Then
    Right_2 = Right(str, n)
  Else
    Right_2 = RightB(str, n)
  End If
End Function

Right_2() はデフォルト設定 (b=False) で Right関数と同じはたらきをします(指定文字数だけ抽出します)。b=True を指定するとバイト数を取り出します。

コメント

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