• ベストアンサー

Excel 式でシートの名前を取得する方法

Excelのセルにそのシートの名前を表示する式を 設定したいのですが、 「シートの名前」の式での表し方が分かりません。 Sheet1のA1セルの値を表示するには、 「=Sheet1!A1」と書くというのは分かるのですが。 ご存知の方、ご教授下さい。 出来るだけバージョンに依存しない方法にしたいと 思っています。

質問者が選んだベストアンサー

  • ベストアンサー
  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.3

=cell("filename",セル) で指定したセルがあるシートのパス名が得られます。 (Z:\[schedule.xls]Sheet2 のような具合に) そこからシート名だけを取り出すなら  =RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1))) でしょうか

guest98
質問者

お礼

出来ました! ご回答ありがとうございましたm(_ _)m

その他の回答 (2)

  • poohron
  • ベストアンサー率59% (574/971)
回答No.2

=RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1))) で取得できますのでお試しください。 ◆A1ではなく他のどのセルを指定しても構いません。 ◆一度保存されたファイルでなければシート名は取得できず、#VALUE! になってしまいます。 ◆ファイル名や保存フォルダ名に ] が含まれていると正しく取得できません  (シート名には含まれていても構いません)

guest98
質問者

お礼

出来ました! ご回答ありがとうございましたm(_ _)m

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

シート見出しに入力された名前を設定すればいいだけですが... =シートの名前!セル座標  例=Sheet1!A1 シートの名前にスペースがある場合は ='シート 名前'!セル座標  例='Sheet 11'!A1 シートの名前が別のセル参照の場合は =INDIRECT(A1&"セル座標")  例=INDIRECT(B1&"A1")

guest98
質問者

補足

その、「シート見出しに入力された名前」を取得したいのです。 この場合、「Sheet1」という文字列を返してくれればいいのですが。

関連するQ&A