
Excelのファイル名や、セル番地、セルの書式などを関数で取得する方法です。
それらの情報を取得するには「CELL関数」を使います。
下図はExcel2016です。
< スポンサーリンク >
CELL関数
CELL(検査の種類, [対象範囲])
検査の種類=必須。返されるセル情報の種類を指定する文字列値を指定します。
※”format” などの一部の検査の種類引数は Excel Web App ではサポートされていません。
対象範囲=省略可能。情報が必要なセルを指定します。この引数を省略した場合、最後に変更されたセルについて、”検査の種類” 引数に指定した情報が返されます。対象範囲がセル範囲の場合、その範囲の左上隅のセルに関する情報だけが返されます。
CELL関数は、セルの書式、位置、または内容に関する情報を返します。たとえば、セルに対して計算を実行する前に、そのセルに文字列ではなく数値が含まれていることを確認する場合は、次の数式を使用します。
=IF(CELL(“type”, A1) = “v”, A1 * 2, 0)
この数式は、セルA1に数値が含まれている場合にのみ A1*2 の計算を実行し、A1に文字列が含まれている場合またはA1が空白の場合は0を返します。
“検査の種類” として指定できる値とその結果
| 検査の種類 | 戻り値 |
|---|---|
| “address” | 対象範囲の左上隅にあるセルの参照を表す文字列。 |
| “col” | 対象範囲の左上隅にあるセルの列番号。 |
| “color” | 負の数を色で表す書式がセルに設定されている場合は 1。それ以外の場合は 0 (ゼロ)。 |
| “contents” | 対象範囲の左上隅にあるセルの値 (数式ではない)。 |
| “filename” | 対象範囲を含むファイルのフル パス名 (文字列)。 対象範囲を含むワークシートが保存されていなかった場合は、空白文字列 (“”)。 |
| “format” | セルの表示形式に対応する文字列定数。 各種の表示形式に対応する文字列定数については、次の表を参照してください。 セルが負数に対応する色で書式設定されている場合、文字列定数の末尾に “-” が付きます。 正数またはすべての値をかっこで囲む書式がセルに設定されている場合、結果の文字列定数の末尾に “()” が付きます。 |
| “parentheses” | 正の値またはすべての値をかっこで囲む書式がセルに設定されている場合は 1。それ以外の場合は 0。 |
| “prefix” | セルの “文字位置” に対応する文字列定数。 セルが左詰めの文字列を含むときは単一引用符 (‘)、右詰めの文字列を含むときは二重引用符 (“)、中央揃えの文字列を含むときはキャレット (^)、両揃えの文字列を含むときは円記号 (\)、また、セルにそれ以外のデータが入力されているときは空白文字列 (“”) になります。 |
| “protect” | セルがロックされていない場合は 0、ロックされている場合は 1。 |
| “row” | 対象範囲の左上隅にあるセルの行番号。 |
| “type” | セルに含まれるデータのタイプに対応する文字列定数。 セルが空白の場合は “b” (Blank の頭文字)、セルに文字列定数が入力されている場合は “l” (Label の頭文字)、その他の値が入力されている場合は “v” (Value の頭文字) になります。 |
| “width” | 小数点以下を切り捨てた整数のセル幅。 セル幅の単位は、既定のフォント サイズの 1 文字の幅と等しくなります。 |
【 CELL の表示形式コード 】
検査の種類引数が “format” であり、”対象範囲” 引数が組み込みの表示形式で書式設定されたセルである場合に返される文字列値を以下のとおりです。
| Excel の表示形式 | 戻り値 |
|---|---|
| 全般 | “G” |
| 0 | “F0” |
| #,##0 | “,0” |
| 0.00 | “F2” |
| #,##0.00 | “,2” |
| $#,##0_);($#,##0) | “C0” |
| $#,##0_);[赤]($#,##0) | “C0-“ |
| $#,##0.00_);($#,##0.00) | “C2” |
| $#,##0.00_);[赤]($#,##0.00) | “C2-“ |
| 0% | “P0” |
| 0.00% | “P2” |
| 0.00E+00 | “S2” |
| # ?/? または # ??/?? | “G” |
| m/d/yy または m/d/yy h:mm または mm/dd/yy | “D4” |
| d-mmm-yy または dd-mmm-yy | “D1” |
| d-mmm または dd-mmm | “D2” |
| mmm-yy | “D3” |
| mm/dd | “D5” |
| h:mm AM/PM | “D7” |
| h:mm:ss AM/PM | “D6” |
| h:mm | “D9” |
| h:mm:ss | “D8” |
CELL関数の使用例
B3のセルにC5セルのアドレスを取得し表示しています。
=CELL(“address”,C5)

“対象範囲” を省略した場合は、最後に変更されたセルの情報が表示されます。

B1のセルに「1234」と入力してみると、B1のセル情報が表示されました。

こんな記事も書いています
