大量に同一のテンプレートに沿った資料を作るときやっかいなのが書類の命名ルールです

後から揃った資料一覧を元に、重複している名前をつけなおしたり、ドキュメントIDを振り直したりすることは、ありがちな状況です

しかし、いちいちファイルを開いて中の文章名を直すのは手間がかかりますし、一覧性に乏しいため間違いがおこりやすいです

資料内の文書のタイトルとファイル名やシート名を連動させておけば、ファイル名を変えるだけでExcel文書の中身も同時に変わって便利です

そんなときに役立つCELL関数の使い方に関して記事にします
f:id:tatsujinwork:20180722133041p:plain
※この記事内容は、Windows版Excel専用です

目次

CELL関数とは

Excelの関数で、選択されたセルの情報を取得できる関数です

関数の書式は以下の通り
=cell(検査の種類,範囲)

以下のページに詳しい説明があります(Microsoft サポートページ)

support.office.com

もっとも使えるのは、検査の種類=filename

これを指定すると、そのセルのあるファイル名とシート名を取得することができます
以下のような感じです
Z:\Personal[【04_xx_xx】立替交通費申請[ー]20180625.xlsx]業務フロー

=MID($C$2,FIND(“】”,$C$2)+1,FIND(“[”,$C$2)-FIND(“】”,$C$2)-1)

関数:=CELL(filename,A1)
結果:ファイルの保存されているパス/ファイル名[シート名]

このままだと使いにくいですが、文字列を操作する関数を組み合わせれば、ファイル名だけとか、シート名だけとかを抽出することができます
例として、C:\Users\Document\テストファイル.xlsxの検証用シートというシート上に関数を書いたとすると以下のようになります

(1) ファイル名(.xlsxなし)

=MID(CELL(“filename”,A1),FIND(“[“,CELL(“filename”,B1)),FIND(“.xls”,CELL(“filename”,A1))-FIND(“[“,CELL(“filename”,B1)))
結果:「テストファイル」

(2) ファイル名(.xlsx含む)

=MID(CELL(“filename”,A1),FIND(“[“,CELL(“filename”,B1)),FIND(“]”,CELL(“filename”,A1))-FIND(“[“,CELL(“filename”,B1)))
結果:「テストファイル」

(3) シート名を抽出する関数

=RIGHT(CELL(“filename”,A1),LEN(CELL(“filename”,A1))-FIND(“]”,CELL(“filename”,A1)))
結果: 「検証用シート」

f:id:tatsujinwork:20180722133111p:plain

なお、上記の関数内で「A1」と書いてあるところは、同一のシート上であればどこのセルでも構いません。
“filename”を検索する際は、セルは参照されないからです(それでも何か指定しないと関数としてはエラーになります)

印刷時のみ、文書のヘッダー/フッターに表示すれば良い場合

この場合は、ページのヘッダー/フッターの設定で、上記よりも容易にファイル名やシート名を表示することができます

詳しい説明は、以下のブログがわかりやすい説明をしているので参考にしてみてください

クリエのちょこテク » 用紙にシート名やページ番号を印刷したい

以上 Excel文書内にファイル名やシート名を表示することができるCELL関数についての記事でした

まとめ

ExcelのCell関数を利用すれば、ファイル名やシート名を表の中に表示することができる

− 例えば、ファイル名で文書名を管理しておけば、後からファイル名を変えるだけで文書の中身に反映できる

− 単純に、印刷時にファイル名を表示したいなら、ヘッダー/フッター設定でも対応可能

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です