Mid関数
Mid関数は、VBA関数の中で文字列操作関数に分類される関数です。
目次
Mid関数とは
Mid関数は、バリアント型 (内部処理形式 String の Variant) の値を返します。文字列から指定した文字数分の文字列を返します。
構文 | Mid(string, start[, length]) | |
---|---|---|
引数 | 省略 | 説明 |
string | × | 文字列を取り出す、元の文字列式を指定します。名前付き引数 string に Null 値が含まれている場合は、Null 値を返します。 |
start | × | 長整数型 (Long) の値を指定します。名前付き引数 string の先頭の位置を 1 として、どの位置から文字列を取り出すかを先頭からの文字数で指定します。start が string の文字数を超える場合、Mid 関数は長さ 0 の文字列 ("") を返します。 |
length | ● | バリアント型 (内部処理形式 Long) の値を指定します。取り出す文字数を指定します。名前付き引数 length を省略した場合、または文字列内に length より短い文字数しかない場合には、start から後のすべての文字が返されます。 |
名前付き引数 string の文字数を決定するときに Len 関数を使用します。文字列をバイト データとして扱う場合は、MidB 関数を使用します。MidB 関数はバイト単位で文字列を取り出します。MidB 関数には、文字数でなく、バイト数を指定します。MidB のコード例は、Mid 関数の使用例を参照してください (ただし、Windows の VBA と Mac のVBA とでは返す値が異なる場合があります)。
Mid関数のサンプルコード
次の例は、Mid 関数を使って、文字列の中から指定した文字数分の文字を返します。
Sub sample()
Dim MyString, FirstWord, LastWord, MidWords
MyString = "Mid Function Demo" ' 文字列を定義します。
FirstWord = Mid(MyString, 1, 3) ' "Mid" を返します。
LastWord = Mid(MyString, 14, 4) ' "Demo" を返します。
MidWords = Mid(MyString, 5) ' "Function Demo" を返します。
End Sub
実行結果
解説
文字列操作関数一覧
関数名 | 内容 |
---|---|
Asc | 文字列内にある最初の文字の文字コードを返します。 |
AscB | 文字列内にある最初のバイトコードを返します。 |
AscW | 文字列内にあるISOコードの文字を返します。 |
Chr | 指定したコードに対応する文字を返します。 |
ChrB | 指定したコードに対応するバイトデータを返します。 |
ChrW | 指定したコードに対応するISOの文字を返します。 |
Format | 式を指定した書式に変換します。 |
Hex | 指定した文字列を16進数で返します。 |
InStr | 検索対象文字列の指定した位置から指定した文字列を検索し、最初に見つかった文字位置を返します。 |
InstrB | 検索対象文字列の指定したバイト位置から指定した文字列を検索し、最初に見つかったバイト位置を返します。 |
LCase | 大文字のアルファベットを小文字に変換します。 |
Left | 文字列の左端から指定した文字数分の文字列を抽出します。 |
LeftB | 文字列の左端から指定したバイト数分の文字列を抽出します。 |
Len | 文字列の文字数を返します。 |
LenB | 文字数のバイト数を返します。 |
Ltrim | 文字列の先頭のスペースを削除した文字列を抽出します。 |
Mid | 文字列の指定した位置から指定した文字数分を抽出します。 |
MidB | 文字列の指定したバイト位置から指定したバイト数分を抽出します。 |
Oct | 指定した文字列を8進数で返します。 |
Right | 文字列の右端から指定した文字数分の文字列を抽出します。 |
RightB | 文字列の右端から指定したバイト数分の文字列を抽出します。 |
Rtrim | 文字列の末尾のスペースを削除した文字列を抽出します。 |
Space | 指定した数のスペースを返します。 |
Str | 数式の値を文字列に返します。 |
StrComp | 文字列を比較した結果を返します。 |
StrConv | 文字列を変換した結果を返します。 |
String | 指定した文字コードに対応する文字を指定した文字数だけ並べた文字列を返します。 |
Trim | 文字列の先頭と末尾のスペースを削除した文字列を抽出します。 |
Ucase | 小文字のアルファベットを大文字に変換します。 |
Val | 文字列を数値に変換します。 |