読者です 読者をやめる 読者になる 読者になる

小さい頃はエラ呼吸

いつのまにやら肺で呼吸をしています。


Excelでファイルパスから拡張子のみを取得する関数

はじめに

ファイルの一覧から拡張子だけを別のセルに抽出して、拡張子でフィルタしたいと思い、拡張子だけを取り出す関数がないかを調べてみました。

結論としては、拡張子を取り出す関数はありませんでしたが、標準の関数を組み合わせることで実現できることがわかりました。

Excelでファイルパスから拡張子部分のみを取得する

セルに以下の計算式を入力すると、A1セルに入力されたファイルパスから拡張子部分のみを取り出すことができます。

=CLEAN(RIGHT(SUBSTITUTE(A1,".",REPT(CHAR(9),100)),100))
解説

1.SUBSTITUTE(A1,".",REPT(CHAR(9),100))でA1セル中のドット(.)をタブ文字*100字に置き換えます。CHAR(9)がタブ文字という意味です。
2.続いて、RIGHT関数で文字列の右側から100文字を取り出します。
3.最後に、CLEAN関数でタブ文字を削除します。
100文字を指定しているのは、拡張子のサイズが決まっていないため、ある程度大きな数字をあてはめているだけと思われます。

便利なtipsですね。

関連記事