OR
誰でも自由に記事を投稿・編集できるオープンリファレンス
記事ID:292
区分:プログラム  |  分類:VB  |  最終更新日:2014/06/20
クリエイティブ・コモンズ 表示-継承ライセンス 2.1
【VB】Right/RightB関数
関連タグ:VBA, VB6, VB.NET, 関数, 文字列, 最後, 後, 右, 終端, 一部, 取得, 抜き出し, 抜き取り, 切り取り
このエントリーをはてなブックマークに追加      
本文
履歴
編集
閲覧数: 30,889
VB6関連技術まとめ > VB関数一覧 > 【VB】Right/RightB関数

指定文字列の右端(終わり)から、指定数分の文字列を取得する関数です。

関数仕様

構文 Right(string, length)
引数
引数 省略 説明
string 不可 任意の文字列式を指定します。
length 不可 切り出す文字列の文字数を指定します。
戻り値 バリアント型(内部処理形式 String の Variant)

 

この関数は、引数指定した文字列の右端(終わり)から、指定数分の文字列を取得し、その値をバリアント型(内部処理形式 String の Variant)で返します。 切り出す文字数に、指定文字列の文字数以上の数値を指定した場合は、文字列がそのまま返ります。 負数を指定した場合は実行時エラーが発生します。 また、0 を指定した場合は長さ 0 の文字列("")が返ります。 なお、指定文字列内に Null 値が含まれていた場合、この関数はエラーとはなりません。 Null 値をそのまま返します。

 

この関数は関数名に型宣言文字「$」を付けることで、戻り値を明示的に文字列型(String)にすることもできます。

strData = Right$("abcde", 3)

※ 型宣言文字「$」は関数名の最後に付けます。

動作検証

条件 動作結果

半角文字列を指定した場合

Right("abcde", 3)

cde

全角文字列を指定した場合

Right("あいうえお", 3)

うえお

全角と半角が混じる文字列を指定した場合

Right("abあいcdeうえお", 5)

deうえお

文字列の文字数を超える数値を指定した場合

Right("abcde", 6)

abcde(※1

RightB()関数でバイト数を指定した場合

RightB("あいうえお", 4)

えお(※2

切り出し文字数に負数を指定した場合

Right("abcde", -1)

実行時エラー

文字列にNull値を指定した場合

Right(Null, 1)

Null(※3

※1 指定文字列の文字数を超える数値を指定した場合は、文字列がそのまま返ります。

※2 RightB()関数はバイト数を指定する為、2 バイト文字列に 4 を指定した場合、右端の 2 文字(4 バイト)が返ります。

※3 この関数は Null 値を指定してもエラーとはなりません

派生関数

この関数には以下の派生関数があります。

関数 説明

RightB

指定文字列をバイトデータとして扱い、文字列の右端から指定数分のバイトデータを取得します。

類似関数

この関数に類似する機能をもつ関数は、以下のものがあります。

関数 説明

Left

文字列の左端から、指定数分の文字列を取得する。

Mid

文字列の指定位置から、指定数分の文字列を取得する。

注意事項

  • VB.NET 以降では RightB 関数はサポートされていません。(廃止されました) 

サンプルコード

Sub Sample()
    Dim filename As String
    filename = "testfile.xxx"
    Debug.Print Right(filename, Len(filename) - InStr(filename, ".")) '拡張子を返します
End Sub

※ 上記サンプルは InStr() 関数で「.(ピリオド)」の位置を特定し、文字列の文字数からその位置を引いて「.」から後の文字列を取得しています。

関連記事
外部リンク
- 記事検索 -