Excel関数 逆引き集 | 末尾のファイル拡張子を取得 → RIGHT

Excel
スポンサーリンク

概要

Excelで「ファイル名から拡張子だけを取り出したい」ときは、RIGHT関数+SEARCH関数を組み合わせます。拡張子は通常「.」の後ろに続く文字列なので、「.」の位置をSEARCHで探し、その後ろの文字数分をRIGHTで切り出す仕組みです。ログ整理やファイル一覧の加工に役立ちます。


基本の使い方

書式

=RIGHT(ファイル名セル, LEN(ファイル名セル) - SEARCH(".", ファイル名セル))
  • SEARCH(".", ファイル名セル):ファイル名の中で「.」の位置を取得
  • LEN(ファイル名セル):文字列全体の長さを取得
  • LEN(...) - SEARCH(...):拡張子の文字数を計算
  • RIGHT(...):末尾からその文字数分を切り出す

=RIGHT("report.xlsx", LEN("report.xlsx") - SEARCH(".", "report.xlsx"))
// 結果: "xlsx"

具体例

セル参照で拡張子を取得

=RIGHT(A2, LEN(A2) - SEARCH(".", A2))

A2が「data.csv」なら結果は「csv」。

複数文字の拡張子も対応

=RIGHT(B2, LEN(B2) - SEARCH(".", B2))

B2が「presentation.pptx」なら結果は「pptx」。

拡張子が短い場合も対応

=RIGHT(C2, LEN(C2) - SEARCH(".", C2))

C2が「image.jpg」なら結果は「jpg」。


応用テンプレート

IFERRORで拡張子がない場合の対策

=IFERROR(RIGHT(D2, LEN(D2) - SEARCH(".", D2)), "拡張子なし")

「.」が含まれない場合は「拡張子なし」と表示。

拡張子を大文字に変換

=UPPER(RIGHT(E2, LEN(E2) - SEARCH(".", E2)))

「file.pdf」→「PDF」。

拡張子を小文字に変換

=LOWER(RIGHT(F2, LEN(F2) - SEARCH(".", F2)))

「FILE.TXT」→「txt」。


よくあるつまずきと対策

「.」が複数ある場合

SEARCHは最初の「.」を返します。ファイル名に複数の「.」がある場合は、最後の「.」を探すためにSEARCHではなくFINDREPTTEXTAFTER(Microsoft 365)を使うと便利です。

拡張子がない場合

エラーになります。IFERRORで補うと安心です。

大文字小文字の揺れ

拡張子は大文字小文字が混在することがあります。UPPERやLOWERで統一すると処理が安定します。


例題

問題1: A2セルの「report.xlsx」から拡張子をB2に表示してください。

解答例:

=RIGHT(A2, LEN(A2) - SEARCH(".", A2))

問題2: C2セルの「data.csv」から拡張子をD2に表示してください。

解答例:

=RIGHT(C2, LEN(C2) - SEARCH(".", C2))

問題3: E2セルの「presentation.pptx」から拡張子をF2に表示してください。

解答例:

=RIGHT(E2, LEN(E2) - SEARCH(".", E2))

問題4: G2セルの文字列に「.」が含まれない場合は「拡張子なし」とH2に表示してください。

解答例:

=IFERROR(RIGHT(G2, LEN(G2) - SEARCH(".", G2)), "拡張子なし")

問題5: I2セルの「FILE.TXT」から拡張子を小文字に変換してJ2に表示してください。

解答例:

=LOWER(RIGHT(I2, LEN(I2) - SEARCH(".", I2)))

まとめ

ファイル拡張子を取得するには RIGHT+SEARCH+LEN の組み合わせが基本です。

  • 「.」の位置をSEARCHで探す
  • LENで文字数を計算
  • RIGHTで末尾を切り出す

さらにIFERRORでエラー対策、UPPER/LOWERで表記統一を加えると実務で安定します。講師として強調したいのは「位置を特定して切り出す」という考え方。これを習得すれば、Excelでの文字列処理が一段と自在になります。

タイトルとURLをコピーしました