【エクセル】関数でシート名を取得する方法!
<スポンサーリンク>
エクセルでシート名のみを取得して、
セルに表示させる方法を説明します。
使用する数式とサンプル
使用する数式は、
=MID(CELL("filename", A1 ),FIND("]",CELL("filename", A1 ))+ 1,255 )
となっています。
A1はどのセルを選択しても構いません。
表示結果は下記の通り、B3にシート名「シート名を表示」が表示されていることが分かると思います。
数式の説明
数式の説明をします。
あまりなじみのない関数かもしれませんが、
CELL("○○", A1)
で、セルのいろいろな内容を取得することができます。
その中でも、○○を→「filename」とすると、
C:\Users\bluei\OneDrive\デスクトップ[SAMPLE.xlsx]シート名
のように、シートのファイル名とパスを取得することができます。
ここまで来たら、あとは、シート名を取り出してくるだけです。
シート名は "]" の後に来ることが分かっていますので、
MID関数で "]" 以降の文字列をもってきます。
ExcelUIでは、31文字を超えるワークシートに名前を付けることはできませんが、念のため最大の255文字を使用しています。
その他CELL関数で得られる情報
その他CELL関数で得られる情報は下記のとおりです。
思った以上にいろいろと
address | 参照内の最初のセルのアドレスを(テキストとして)返します。 |
col | 参照の最初のセルの列番号を返します。 |
color | 参照の最初のセルが負の値の色を使用してフォーマットされている場合、値1を返します。そうでない場合はゼロ。 |
contents | referenceの左上のセルの値を返します。 数式は返されません。代わりに、数式の結果が返されます。 |
filename | ファイル名とフルパスをテキストとして返します。 参照を含むワークシートがまだ保存されていない場合、空の文字列が返されます。 |
format | セルの数値形式に対応するコードを返します。 |
parentheses | 参照の最初のセルが括弧でフォーマットされている1を返し、そうでない場合は0を返します。 |
prefix | セルのラベルプレフィックスに対応するテキスト値を返します。セルのテキストが左揃えの場合は一重引用符( ')、セルテキストが右揃えの場合は二重引用符( ")、キャレット( ^)セルテキストが中央揃えのテキストの場合、セルテキストが塗りつぶされた場合はバックスラッシュ()、ラベルプレフィックスがそれ以外の場合は空の文字列。 |
protect | 参照の最初のセルがロックされている場合は1を返し、ロックされていない場合は0を返します。 |
row | 参照の最初のセルの行番号を返します。 |
type | 参照の最初のセルのデータのタイプに対応するテキスト値を返します。セルが空の場合は「b」、セルにテキスト定数が含まれる場合は「l」、値が「v」の場合は「v」セルには他のものが含まれています。 |
width | セルの列幅を返し、最も近い整数に丸めます。列幅の単位は、デフォルトのフォントサイズの1文字の幅と同じです。 |
コメント欄