更新日:、 作成日:

エクセル シート名を取得する

はじめに

365202120192016:対応

エクセルのシート名を取得する方法を紹介します。

「CELL 関数」を使用して、シート名を取得できます。

名前の定義からマクロを使用して、シート名の一覧を取得できます。

マクロ VBA でシート名を取得するには「VBA シート名を取得または変更する」をご覧ください。

シート名を取得する

次の数式をセルに貼り付けると、指定したセルのあるシート名を取得できます。複雑なので数式について詳しい解説は省略します。

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

LET 関数」を使用できるバージョンなら次のように入力できます。

=LET(name,CELL("filename",A1),RIGHT(name,LEN(name)-FIND("]",name)))

シート名を取得するのに「CELL 関数」を使用しています。ファイルが保存されている必要があります。新規作成中では取得できません。

シート「Sheet1」では Sheet1 が取得されます。

12

別のシートの名前を取得するには A1 の部分をそのシートの A1 に置き換えます。 Sheet2 を取得するには次のように入力します。

=RIGHT(CELL("filename",Sheet2!A1),LEN(CELL("filename",Sheet2!A1))-FIND("]",CELL("filename",Sheet2!A1)))
=LET(name,CELL("filename",Sheet2!A1),RIGHT(name,LEN(name)-FIND("]",name)))
別シートを参照する方法については「エクセル 別シートを参照(リンク)する」をご覧ください。

シート名の一覧を取得する

シートの番号を指定してシート名を取得できます。これを使ってシート一覧を表示できます。

[数式] タブをクリックし、定義された名前グループにある [名前の定義] をクリックします。

3

名前に book と入力し、参照範囲に =GET.WORKBOOK(1) を入力して [OK] をクリックします。

4

名前に doc と入力し、参照範囲に =GET.DOCUMENT(88) を入力して [OK] をクリックします。

5

次の数式を入力して指定した番号のシート名を取得できます。数式の数字の部分で番号を指定しています。シートの番号は左から順番に 1,2,3・・・ のようになっています。

=SUBSTITUTE(INDEX(book,1),"["&doc&"]","")
=SUBSTITUTE(INDEX(book,2),"["&doc&"]","")
=SUBSTITUTE(INDEX(book,3),"["&doc&"]","")
13

数式の番号の部分を ROW() にすると、セルの行番号に対応するシート名を取得できます。この数式をコピーして簡単にシート名一覧を取得できます。

=SUBSTITUTE(INDEX(book,ROW()),"["&doc&"]","")
14

シート一覧を取得したファイルを保存するときにメッセージが表示されます。詳しくは次の「保存する」をご覧ください。

メッセージを表示させないために、シート名を取得した [セル] をコピーして別のセルを右クリックして [形式を選択して貼り付け] から [値] をクリックします。

15

これで数式が必要なくなったので名前の定義を削除します。[数式] タブをクリックし、定義された名前グループにある [名前の管理] をクリックします。

16

book と doc を選択して [削除] をクリックします。

17

これで保存時に次のメッセージが保存されることはありません。

保存する

名前の定義でマクロ関数 (VBA ではありません) を使用しているため、ファイルを保存するときに次のメッセージが表示されます (既に保存済みのとき)。
  • [はい] をクリックすると、拡張子を変更しないで保存できます。ただし名前の定義が削除されるので、再度シート名を取得するにはまた名前を定義する必要があります。
  • [いいえ] をクリックすると、拡張子を .xlsx から .xlsm にして保存する必要があります。
8

[いいえ] を選択したときは拡張子を .xlsm で保存する必要があります。 [このPC] をクリックまたはダブルクリックします。

9

ファイルの種類から [Excel マクロ有効ブック (*.xlsm)] を選択して [保存] をクリックします。

10

新しいファイルが作成されます。

11