現在のワークシートの名前をセルに表示するにはどうすればよいですか?


13

そのワークシートのセルに現在のワークシートの名前を表示できるようにします。

VBAスクリプトに頼らずにそれを行うにはどうすればよいですか?

問題があれば、私が使用しているExcelの特定のフレーバーは2007年ですが、可能な限りバージョンに依存しないものを好むでしょう。

回答:


19
=RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1),1))

この関数が機能する前に、ワークブックを保存する必要があります。

関数のキー=CELL("filename",A1)は、ファイルパス、ファイル名、ワークシート名を含む便利な文字列を返すである:C:\Users\john.smith\Desktop\[Test.xlsx]Sheet1

見る:


セル参照A1はオプションです、いいえ?
エール

2
これは私のために働く:=RIGHT(CELL("filename"),LEN(CELL("filename"))-SEARCH("]",CELL("filename")))
エール

2
セル参照は省略できますが、ファイルにCell()関数が1つしかない場合は関係ありません。ただし、セル関数を使用して各シートのシート名を表示する場合は、A1参照が必要です。そうでない場合、各シートには同じ値が表示されます。表示される値は、最後に再計算された式によって異なります。したがって、A1への参照なしで、Sheet1、Sheet2、Sheet3に数式を入力します。Sheet3を再計算すると、「Sheet3」と表示されます。Sheet1に移動すると、「Sheet3」も表示されます。-おそらくあなたが望むものではありません。ただし、セル参照を使用すると、式は期待どおりに機能します。
テイリン

6
若干短く.....=MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,32)
バリー・フーディーニ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.