当サイトではアフィリエイト広告を利用しています

Excelでフルパスからファイル名やパスを取得する方法をマスターしよう!

Excel
インフラ担当ツール・ソフトパソコン
スポンサーリンク

Excelでフルパスからファイル名やパスを取得する方法を知りたい!なぜなら…。

手作業でファイル名やパスを抽出するのが面倒で時間がかかる!監査対応などで正確な情報を提供したい!って思いませんか?

ホームページ・インフラ担当が副業やるってよ!
こんにちは!uri uri(@Uriuri_writer)です。この記事では、Excelの関数だけでフルパスからファイル名やパスのみを抽出する方法を詳しく説明します。知っておけば、VBAを使わず、簡単な関数で目標を達成できるので、手軽に使えて業務の効率化にも役立ちますよ。

当サイトではExcelについて知っておくべき情報を多数掲載しています。あわせてそちらもご覧いただくと専門的知識が得られますよ。

こちらからご覧ください→https://m32006400n.xsrv.jp/tag/excel/

スポンサーリンク

Excelでフルパスからファイル名やパスを取得する方法の実務的な便利さ

実際にフルパスが実務でどう役に立つのかをいくつかシーン別でお伝えします。

正直、いまさら「Excelでファイル管理なんてw」って思ってもいい。しかし、知っておくと会社や人に合わせて対応することができるようになりますよ。

Excelでフルパスからファイル名やパスを取得する方法は、以下のような実務上の便利な場面で活用できます。

ファイル管理の効率化

  • フォルダ内のファイル一覧を簡単に作成できる。
  • ファイルの保存場所を一目で確認できる。
  • ファイル名の重複チェックが容易になる。
レポート作成の効率化

  • レポート内にファイル情報を自動的に記載できる。
  • ファイル名の変更に合わせてレポートの内容を自動更新できる。
情報共有の改善

  • ファイルの保存場所を簡単に共有できる。
  • ファイル名の命名ルールを統一しやすくなる。
監査対応の容易化

  • ファイルの保存場所や履歴を簡単に確認できる。
  • ファイル管理の透明性が高まる。

このように、Excelでフルパスからファイル名やパスを取得する方法は、ファイル管理やレポート作成、情報共有、監査対応など、実務上の様々な場面で活用できる便利な機能です。

フルパスからファイル名を取得する方法

フルパスからファイル名を取得する方法は関数の組み合わせで可能です。

まず、B2セルにフルパスを記述してから、以下の関数を使用します。

/* 関数例 */
=RIGHT(A1, LEN(A1)-FIND(">",SUBSTITUTE(A1,"/","-",LEN(A1)-LEN(SUBSTITUTE(A1,"/","")))))

UNIXバージョンであれば、上記の関数でファイル名のみを取得できます。

Windowsバージョンだと”\\”を利用して同様の処理が可能ですので、使用しているOSや取得したいデータに応じて適宜変更してくださいね。

本記事をご覧になられている方はWindowsユーザーが多いと思いますので下記にWindowsユーザー向けの手順を記載しておきますね。

フルパスからファイル名を取得するには、以下の手順を行います。

  1. 対象のフルパスが格納されたセルを特定する。例えば、セルE7にフルパスが記載されているとする。
  2. 使用する関数は以下のようなものです。
    /* 数式 */
    RIGHT(E7, LEN(E7) - FIND("\\", SUBSTITUTE(E7, "\\", "\\", LEN(E7) - LEN(SUBSTITUTE(E7, "\\", "")))))

ちゃんと解説しますね。

/* 解説1 */
SUBSTITUTE(E7, "\\", "\\", LEN(E7) - LEN(SUBSTITUTE(E7, "\\", "")))

上記の式は、フルパスの最後のバックスラッシュ(\)の位置を特定します。

/* 解説2 */
FIND("\\", ...)

FINDで最後のバックスラッシュの位置を取得します。

/* 解説3 */
LEN(E7) - FIND("\\", ...)

LEN関数とFIND関数で、最後のバックスラッシュ以降の文字数を取得する。

/* 解説4 */
RIGHT(E7, ...)

RIGHT関数で、最後のバックスラッシュ以降の文字列(ファイル名)を取得する。こんな感じです。

パスのみを取得する方法

パスのみを取得するのも関数を使います。

例えば、セルE7にフルパスが記載されているとします。

/* 数式 */
LEFT(E7, FIND("\\", SUBSTITUTE(E7, "\\", "\\", LEN(E7) - LEN(SUBSTITUTE(E7, "\\", ""))) , 1) - 1)

この関数は、フルパスからパスのみを抽出することができます。

これだけだと、わかりづらいと思いますので、ちょっと解説しますね。

/* 解説1 */
SUBSTITUTE(E7, "\\", "\\", LEN(E7) - LEN(SUBSTITUTE(E7, "\\", "")))

上記の関数のかたまりは、フルパスの最後のバックスラッシュ(\)の位置を特定するのに使ってます。

/* 解説2 */
FIND("\\", ...)

FIND関数で最後のバックスラッシュの位置を取得します。

/* 解説3 */
LEFT(E7, FIND("\\", ...) - 1)

LEFT関数で、最後のバックスラッシュ以前の文字列(パス)を取得します。

今回使った関数の仕組みを改めて理解しよう

今回の関数の仕組みは、フルパスからファイル名やパスを抽出するために、以下のような仕組みを使っています。

関数の仕組み

  • SUBSTITUTE() 関数を使って、フルパス内の最後のバックスラッシュ(\)の位置を特定する。
  • FIND() 関数を使って、最後のバックスラッシュの位置を取得する。
  • LEFT() または RIGHT() 関数を使って、ファイル名やパスを抽出する。

これらの関数を組み合わせることで、フルパスからファイル名やパスを簡単に取得できるようになります。

これらの関数の基本的な考え方は、フルパスから最後の区切り文字を見つけ出し、その位置を基準に文字列を分割することです。区切り文字が「/」や「\\」でない場合は適宜変更してください。また、特定の文字列がフルパス内に含まれる場合は、エラーチェックでそのまま表示する仕組みもあります。

まとめ

Excelの関数だけでフルパスからファイル名やパスを取得する方法は、VBAを使わずに業務効率を上げるために非常に便利です。業務で必要なファイル名やパスのみの抽出を行いたい場合、ぜひこの方法を試してみてください。この記事を少しでもためになった!と思ったならコメントやSNSでみんなにシェアをしていただけるととても励みになります!これからも、ガジェットや便利ツールの情報発信していきますので、サイトをお気に入りやブックマークに入れていただけると、とっても嬉しいです(‘ω’)ノ。

ではでは、最後までご覧いただきありがとうございました。

ホームページ・インフラ担当が副業やるってよ!

Twitter:@Uriuri_writer

Instagram:@uriuri_writer
Instagram

コメント

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