- ベストアンサー
Excel 式でシートの名前を取得する方法
Excelのセルにそのシートの名前を表示する式を 設定したいのですが、 「シートの名前」の式での表し方が分かりません。 Sheet1のA1セルの値を表示するには、 「=Sheet1!A1」と書くというのは分かるのですが。 ご存知の方、ご教授下さい。 出来るだけバージョンに依存しない方法にしたいと 思っています。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
=cell("filename",セル) で指定したセルがあるシートのパス名が得られます。 (Z:\[schedule.xls]Sheet2 のような具合に) そこからシート名だけを取り出すなら =RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1))) でしょうか
その他の回答 (2)
- poohron
- ベストアンサー率59% (574/971)
=RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1))) で取得できますのでお試しください。 ◆A1ではなく他のどのセルを指定しても構いません。 ◆一度保存されたファイルでなければシート名は取得できず、#VALUE! になってしまいます。 ◆ファイル名や保存フォルダ名に ] が含まれていると正しく取得できません (シート名には含まれていても構いません)
お礼
出来ました! ご回答ありがとうございましたm(_ _)m
- mshr1962
- ベストアンサー率39% (7417/18945)
シート見出しに入力された名前を設定すればいいだけですが... =シートの名前!セル座標 例=Sheet1!A1 シートの名前にスペースがある場合は ='シート 名前'!セル座標 例='Sheet 11'!A1 シートの名前が別のセル参照の場合は =INDIRECT(A1&"セル座標") 例=INDIRECT(B1&"A1")
補足
その、「シート見出しに入力された名前」を取得したいのです。 この場合、「Sheet1」という文字列を返してくれればいいのですが。
お礼
出来ました! ご回答ありがとうございましたm(_ _)m