目次
セルにシート名を自動表示するには?
シート名を表示したいセルに下記の数式を埋め込みます。
=MID(CELL("filename"),SEARCH("]",CELL("filename"),1)+1,31)
ただ、これだけで、シート名が表示されます。
解説(なぜ?)
CELL関数は、セルに関する様々な情報を提供します。今回はそのうち”filename”を使用しました。
CELL関数の第二引数を省略すると、式を埋め込んだセルを暗黙的に指定したことになります。
たとえば、A1セルに記述する場合、下記の2つは全く同じ意味になります。
=CELL("filename")
=CELL("filename",A1)
上記の式は、<ブックのPath>\[ブック名]シート名という形式で値を返します。(注:<>は便宜上付けたもの、[]は実際に付くもの)
実際の例見たほうが分かりやすいでしょう
C:\Users\yoshi\Downloads\ColorConversion\[ColorConversion.xlsm]シート名
このように、ブック名が[]で囲まれていることと、]の次からシート名が始まることを利用します。「]」を検索して、その次の文字から31文字を切り出しています。(31の部分は99でも100でも構わいません。が、Excelのワークシートの名前の最長が31文字なので、無駄を省くなら31としましょう。)
コメント