VBA:パスのファイル名から拡張子を取り除く方法(Split・InStrRev)


 VBAでツールを作っていると、ファイル名から拡張子部分を削除したい場合があります。
 そのような場合に使えるサンプルコードを簡単ですが記事にしておきます。

◆ファイル名から拡張子を取り除く方法

 サンプルのコードでは、以下の3ステップで拡張子を取り除いています。

  1. パスから拡張子を含むファイル名を取得
  2. InStrRev関数を使って、ファイル名の右側から「.」の位置を探して、左端からの位置を取得
  3. Left関数でファイル名の拡張子を除いた部分を取得

サンプルコード

パスにあるファイル名を取得し、拡張子を取り除いたものを戻すようにしています。

「InStrRev」関数

 「InStrRev」関数は、文字列(ファイル名)の中から指定された文字列(「.」ピリオド)の位置を、最後の文字位置から検索し、最初に見つかった文字位置を返します。そのため、ここでは拡張子との区切りのピリオドの位置を検索してくれます。


おすすめ