KutoolsforOffice— 1 つのソリューション、5 つの強力なツール。少ない労力で大きな成果。

Excel でパスからファイル名を抽出する

著者Siluvia変更日

本チュートリアルでは、Excel で特定のセルに含まれるファイルパスから、拡張子付きまたは拡張子なしのファイル名を抽出する数式の使い方を解説します。

doc-extract-filename-frompath-1

パスから拡張子付きのファイル名を抽出する
パスから拡張子なしのファイル名を抽出する


パスから拡張子付きのファイル名を抽出する

下記のスクリーンショットのように、異なるファイルパスを含むリストから拡張子付きのファイル名のみを抽出したい場合、以下の数式が役立ちます。

doc-extract-filename-frompath-2

汎用的な数式

=MID(A1,FIND(「*」,SUBSTITUTE(A1,「\」,「*」,LEN(A1)-LEN(SUBSTITUTE(A1,「\」,「」))))+1,LEN(A1))

引数

A1:ファイル名を抽出する対象となるファイルパスが含まれるセルを示します。

この数式の使用方法

1。ファイル名を出力する空白セル(ここではセル D3)を選択します。

2。以下の数式を入力し、Enterキーを押してください。その後、結果セルを選択してフィルハンドルを下までドラッグすれば、他のセルにも簡単に適用できます。

=MID(B3,FIND(「*」,SUBSTITUTE(B3,「\」,「*」,LEN(B3)-LEN(SUBSTITUTE(B3,「\」,「」))))+1,LEN(B3))

doc-extract-filename-frompath-3

これで、指定したファイルパス内にある拡張子付きのすべてのファイル名が、上記スクリーンショットのように抽出されました。

注意事項:

  • この数式では、B3 がファイルパスを含むセルです。必要に応じて変更してください。
  • ファイル名が99 文字以下であれば、以下のより短い数式でも問題を解決できます。下記のスクリーンショットをご参照ください。
    =TRIM(RIGHT(SUBSTITUTE(A2,「\」,REPT(「 」,100)),99))
    doc-extract-filename-frompath-4

この数式の動作原理

=MID(B3,FIND(「*」,SUBSTITUTE(B3,「\」,「*」,LEN(B3)-LEN(SUBSTITUTE(B3,「\」,「」))))+1,LEN(B3))

1。FIND(「*」,SUBSTITUTE(B3,「\」,「*」,LEN(B3)-LEN(SUBSTITUTE(B3,「\」,「」))))

  • LEN(B3)LEN 関数は「D:\\files\\work\\Q1\\Jan\\text.txt」の全長を計算し、結果として30 を返します。
  • LEN(SUBSTITUTE(B3,「\」,「」))SUBSTITUTE 関数は「\」を空文字に置き換え、その結果「D:filesworkQ1Jantext.txt」となります。その後、LEN 関数がこの文字列の全長を計算し、24 という値を返します。
  • SUBSTITUTE(B3,「\」,「*」,30-24)SUBSTITUTE 関数は、「D:\\files\work\Q1\Jan\text.txt」内の3 番目のバックスラッシュ(30-24=6 より算出)を単一の文字「*」に置き換えます。結果は「D:\\files\work\Q1\Jan*text.txt」です。
  • FIND(「*」,「D:\\files\work\Q1\Jan*text.txt」)FIND 関数は「D:\\files\\work\\Q1\\Jan*text.txt」内で「*」文字の位置を特定し、その結果として22 を返します。これは、「*」が「D:\\files\\work\\Q1\\Jan*text.txt」の22 文字目に存在することを示しています。

2。=MID(B3,22+1,LEN(B3))

  • 上記の説明のように、LEN(B3) は結果として 30 を返すため、MID 関数は =MID("D:\\files\work\Q1\Jan\text.txt"、 [[PH_33]]) と表されます。これは、MID 関数が文字列「D:\\files\work\Q1\Jan\text.txt」の 23 番目の文字から 30 文字を抽出することを意味し、その結果は「text.txt」になります。

パスから拡張子なしのファイル名を抽出する

別のケースとして、下記のスクリーンショットのように、パスから拡張子を除いたファイル名のみを抽出したい場合があります。このセクションでは、その目的を達成するための長い数式をご紹介します。

doc-extract-filename-frompath-5

汎用的な数式

=IFERROR(MID(A1,FIND(CHAR(1),SUBSTITUTE(A1,「\」,CHAR(1),LEN(A1)-LEN(SUBSTITUTE(A1,「\」,「」))))+1,FIND(CHAR(1),SUBSTITUTE(A1,".",CHAR(1),LEN(A1)-LEN(SUBSTITUTE(A1,".",「」))))-FIND(CHAR(1),SUBSTITUTE(A1,「\」,CHAR(1),LEN(A1)-LEN(SUBSTITUTE(A1,「\」,「」))))-1),「」)

引数

A1: ファイル名を抽出する対象となるファイルパスが含まれるセルを示します。

CHAR(1):ここで使用されている CHAR(1)は、必要に応じて任意の CHAR 番号に置き換えることができます。また、アスタリスク(「*」)などの特定の記号を二重引用符で囲んで置き換えることも可能です。

この数式の使用方法

1。拡張子を除いたファイル名を出力するための空白セルを選択してください。

2。以下の数式を入力し、Enterキーを押します。結果セルを選択し、フィルハンドルを下までドラッグして他のセルにも適用します。

=IFERROR(MID(B4,FIND(CHAR(1),SUBSTITUTE(B4,「\」,CHAR(1),LEN(B4)-LEN(SUBSTITUTE(B4,「\」,「」))))+1,FIND(CHAR(1),SUBSTITUTE(B4,".",CHAR(1),LEN(B4)-LEN(SUBSTITUTE(B4,".",「」))))-FIND(CHAR(1),SUBSTITUTE(B4,「\」,CHAR(1),LEN(B4)-LEN(SUBSTITUTE(B4,「\」,「」))))-1),「」)

doc-extract-filename-frompath-6

注意:この数式では、B3 はファイルパスを含むセルです。必要に応じて変更してください。


関連する関数

Excel MID 関数
Excel の MID 関数は、指定されたテキスト文字列の任意の位置から指定した文字数を抽出するために使います。

Excel FIND 関数
Excel の FIND 関数は、指定した文字列内に別の文字列が含まれているかを検索し、その開始位置を返す関数です。

Excel SUBSTITUTE 関数
Excel の SUBSTITUTE 関数は、テキスト文字列内の指定した文字や語句を、別の文字や語句に置き換えるのに使います。

Excel LEN 関数
Excel の LEN 関数は、テキスト文字列に含まれる文字数を返します。

Excel IFERROR 関数
IFERROR 関数は、数式の計算結果がエラーになった場合に独自の値を返し、エラーがなければ通常の結果をそのまま返すための関数です。


関連する数式

セルから複数行を抽出する
セル内に改行(テキスト入力時に Alt + Enter キーで挿入される)で区切られた複数の行があり、それらを別々のセルに抽出したい場合、このチュートリアルで紹介する数式が役立ちます。

複数行セルから最後の行を抽出する
改行で区切られたテキスト文字列から最後の行を抽出したいなら、このチュートリアルで紹介する数式がExcel での作業をスムーズにサポートします。

Excel でテキスト文字列から n 番目の単語を抽出する
本記事では、Excel のセル内にあるテキスト文字列から、指定した n 番目の単語を抽出するための数式をご紹介します。

Excel でセルから最後の2 つの単語を抽出する
このチュートリアルでは、Excel のセルから最後の2 つの単語を簡単に抽出できる数式の使い方をわかりやすく解説します。

Excel で特定の文字で始まる単語を抽出する
このチュートリアルでは、セル内のテキストから特定の文字で始まる単語を抽出するための、ステップバイステップの数式を詳しく解説します。

最初または最後の単語を除くすべての単語を抽出する
本チュートリアルでは、Excel でセル内の最初または最後の単語を除いたすべての単語を抽出するための数式の使い方を学びます。


最高の Office 生産性ツール

Kutools for Excel - あなたを群衆の中から際立たせます

🤖KUTOOLS AI アシスト:次に基づいてデータ分析を革新します:インテリジェント実行     コード生成  カスタム数式作成    データ分析とチャート生成  拡張機能呼び出し
人気機能検索・ハイライト・重複をマーキング    空白行を削除する    データを失うことなく列の結合またはセルを    数式を使用しない四捨五入...
スーパー VLookup複数条件    複数値    複数シート間    ファジーマッチ...
高度なドロップダウンリスト簡単なドロップダウンリスト    連動型ドロップダウンリスト    複数選択可能なドロップダウンリスト...
列マネージャー指定した数の列を追加    列の移動   非表示列の表示状態を切り替え  列を比較して同じ/異なるセルを選択...
注目の機能グリッドフォーカス    デザインビュー    強化された数式バー    ワークブックとシートマネージャーリソースライブラリ(オートテキスト)  日付ピッカー    ワークシートの統合    暗号化/セルの復号化   リストからメール送信    スーパーフィルター    特殊フィルタ(太字のフォントを持つセルをフィルタリング/イタリック/取り消し線。。。) 。。。
トップ15 ツールセット12 テキストツールテキストの追加特定の文字を削除...)  50+チャートタイプガントチャート...)  40+実用的な数式誕生日に基づいて年齢を計算します...)  19 挿入ツールQR コードを挿入パスから画像を挿入...)  12 変換ツール単語に変換する為替レートの変換...)  7 結合と分割ツール高度な行のマージExcel セルを分割...)。。。他にも多数
Kutools を好みの言語でお使いいただけます。英語、スペイン語、ドイツ語、フランス語、中国語、および40+言語以上をサポートしています!

Kutools for Excel は300 以上の機能を備えており、必要な機能が常にワンクリックで利用できます…


Office Tab - Microsoft Office(Excel を含む)でタブを使った閲覧・編集を可能にします

  • 数十もの開いているドキュメントを1 秒で切り替えられます!
  • 毎日何百回ものマウスクリックを削減して、マウス手の悩みともさよならしましょう。
  • 複数のドキュメントを閲覧・編集する際の生産性が50%も向上します。
  • Office(Excel を含む)に、Chrome、Edge、Firefox のような効率的なタブ機能をもたらします。