文字列の一部分を取得する(1) | みんなのワードマクロ

みんなのワードマクロ

ワードマクロで、文書作成とオフィス事務を効率化!!

Mid関数です。


文字列を取り出す開始位置を指定して、そこから指定した文字数の文字列を取得します。


構文は、以下の通り。


Mid(文字列式, 開始位置[, 文字数])


文字列式:元の文字列を入力します。


開始位置:取り出し開始位置ですね。


文字数:省略が可能なので、スクウェアーブラケット[ ]で囲みました。数値を入力しない場合には、開始位置から文字列の最後までの文字が取得されます。


▼例:

「みんなのワードマクロ」から、「ワードマクロ」を取得する場合


Mid("みんなのワードマクロ", 5, 6)


翻訳:5文字目の「ワ」から6文字分を取得


Mid("みんなのワードマクロ", 5)


翻訳:5文字目の「ワ」以降の文字を取得


▼応用例
用途は、事例があると理解しやすいかも。


アメブロの記事の編集画面を開くマクロ 」にて活用してみました。


アメブロ記事の記事URLは以下のように示されます。


http://ameblo.jp/gidgeerock/entry-10582866723.html

 

つまり、アメブロの個別のアドレスの後ろに「/entry-11ケタの記事ID.html」となっているんですね。


なので、例えば、「記事URL」を取得したいときにMid関数とLen関数 を使います。


myURL = http://ameblo.jp/gidgeerock/entry-10582866723.html  とすると、

記事URL = Mid(myURL, Len(myURL) - 15, 11)


この結果、記事URL に、「10582866723」を取得できるのです。


文字の取得開始位置を、「Len(myURL) - 15」として、Len関数を使って指定するところがミソです。


ほかにも取得方法はありますが、ひとまずこういう考え方があります。


便利ですね。



▼関連記事

文字列関数の目次


アメブロの記事の編集画面を開くマクロ


文字列の長さを求める


▼参考文献

かんたんプログラミング Excel2003 VBA コントロール・関数編

P.217 文字列を取得する