Home > Excel エクセルの使い方-関数/計算式-文字列操作 > ファイル名・ワークブック名をセルに表示−CELL関数・FIND関数・MID関数

ファイル名・ワークブック名をセルに表示−CELL関数・FIND関数・MID関数

スポンサード リンク
対象:Excel97,Excel2000,Excel2002,Excel2003

CELL関数の第1引数に「"filename"」を指定することで、「絶対パス名+[ファイル名]+シート名」を取得し、そこからFIND関数・LEN関数・RIGHT関数を使ってシート名をセルに表示させる方法をご紹介しました。

似たようなことですが、
「ワークブック名を表示させるにはどうすればいいのでしょうか?」
「ファイル名をセルに表示させたいのですが...?」
というご質問をいただくこともあります。

考え方はワークシート名をセルに表示させたときと同じです。


▼操作手順:セルにワークブック名を表示させる
ブック名を表示させたいセルに、
「=MID(CELL("filename",A1),FIND("[",CELL("filename",A1))+1,FIND("]",CELL("filename",A1))-FIND("[",CELL("filename",A1))-1)」
という計算式を入力する

関数が随分ネストしているので読むのもちょっとイヤになりますが、改行やインデントを入れるともう少し読みやすくなるはずです。
=MID(
  CELL("filename",A1),
  FIND("[",CELL("filename",A1))+1,
  FIND("]",CELL("filename",A1))-FIND("[",CELL("filename",A1))-1
)

MID関数は、
第1引数に指定された文字列の中から、
第2引数で指定された位置を先頭に、
第3引数で指定された文字数分の文字列を
取得する関数です。

「CELL("filename",A1)」で「絶対パス名+[ファイル名]+シート名」が取得できるので、ここからワークブック名=ファイル名だけを取り出すために「[」と「]」を探し、開始位置と文字数を指定しているわけです。

「CELL("filename",A1)」
「FIND("[",CELL("filename",A1))」
「FIND("]",CELL("filename",A1))」
がそれぞれどんな値を返してくるかを是非ご自分で試して、確認してください。

↓『インストラクターのネタ帳』の管理人が講師をします。 エクセルマクロ入門講座のご案内

トラックバック:4

TrackBack URL
ブック名を表示させたい from インストラクターのネタ帳
対象:Excel 97,2000,2002,2003 CELL関数・FIND関数・MID関数を駆使して、ワークブック名をセルに表示させる方法をご紹介しました。 ご紹介しておいて言うのも何なのですが、実はあの方法で上手くいかないケースもあります。 フォルダ名やファイル名に「[」や「]」が使...
ワークシート名をセルに表示 from インストラクターのネタ帳
対象:Excel 97,2000,2002,2003 ワークシート関数を使ってブック名を表示させる方法では、上手くワークブック名が取得できない場合があるとこととその対策をご紹介しました。 同様の問題は、ワークシート関数を使ってシート名をセルに表示させる場合にもやっぱり発生しま...
ブック名を表示する−4.0マクロ関数 from インストラクターのネタ帳
対象:Excel 97,2000,2002,2003 ワークブック名をセルに表示させるために、ワークシート関数を駆使する方法と、ユーザー定義関数を利用する方法をご紹介しました。 他にもブック名をセルに表示させる方法があります。...
左から(前から・先頭から)n文字削除する−MID関数・LEN関数 from インストラクターのネタ帳
Excel・エクセルで、文字列の左から(前から・先頭から)n文字を削除したい場合、MID関数とLEN関数を組み合わせる方法があります。

Home > Excel エクセルの使い方-関数/計算式-文字列操作 > ファイル名・ワークブック名をセルに表示−CELL関数・FIND関数・MID関数

VBAエキスパート

search

「Excel エクセルの使い方-関数/計算式-文字列操作」の記事一覧

このページの上部へジャンプ

.