概念: ワークブック内の構造化参照
Worksheets ワークブックのライブ データ領域は、Excel のテーブルに似ています。ワークシートで Workday の詳細レポートを基にしてワークブックにライブ データ領域を追加すると、ライブ データが含まれた
テーブル
が作成されます。デフォルトでは、「Report
」という単語と増分する数字から成るライブ データ テーブル名が自動的に割り当てられます。例: Report1。必要に応じて、データ ウィザードの実行時でも後からでも、ライブ データ テーブルに独自の名前を作成できます。Worksheets でテーブル名がサポートされているのは、詳細レポートのみです。ライブ データ テーブルの名前を変更する場合、テーブル名はワークブック内で一意である必要があり、定義名またはピボット テーブル名と同じにはできないことに注意してください。
データ ウィザードを実行した後は、セルの範囲を直接指定しなくても、テーブル名と列名を取り入れた特殊な構文を使用して、式に動的な参照を指定できます。テーブル名と列名のこの組み合わせが、構造化参照です。構造化参照の範囲は、ライブ データがリフレッシュされるときに必要に応じて自動的に更新されます。
例:
=SUM(B1:B24)
という数式の代わりに、=SUM(SalesCategory[Sales Amount])
のように指定できます。SalesCategory
はテーブル名、Sales Amount
は列名です。テーブル名 SalesCategory は、ライブ データ領域には表示されません。ただし、ライブ データ パネルを表示する場合は、そのパネルに表示されます。
以下の考慮事項に留意してください。
- Workday 23R1 より前に作成したライブ データ領域については、テーブル名を追加するためにライブ データ領域を編集する必要がある。そのためには、ライブ データ パネルで"ライブ データを編集"をクリックするか、パネル内のいずれかの"編集"リンクをクリックします。
- テーブル名または列名を後から変更すると、そのワークブック内にある既存の構造化参照は更新されるが、テーブル名または列名を含む外部参照がある場合、該当するコンシューマー ワークブックは自動的に更新されない。この参照は手動で更新する必要があります。
- Worksheets では、以下の操作がサポートされていない。
- 構造化参照 (テーブル名と列名) を使用して、条件付き書式設定ルールを定義する。構造化参照を使用して自動入力されるデータに条件付き書式設定ルールを適用することはサポートされています。
- 元は Excel で作成されており、構造化参照を含むファイルをワークシートにアップロードする。
- NOTIFYIF 数式での構造化参照の使用。
構造化参照構文の自動入力
数式バーまたはセルに数式を入力するときは、構造化参照の構文を覚えている必要はありません。数式に入力する内容、またはライブ データ テーブルで選択した内容に応じて、適切な構文が生成され、表示されます。
以下を選択すると、ライブ データの構造化参照構文が生成されます。
- ライブ データ テーブル内の個々のセル。
- 列見出し見出し行を 1 つ以上選択してください。
- ライブ データの列見出しとデータのいずれかを選択するか、データのみを選択できます。
- テーブル全体。見出しを含むライブ データ領域全体を選択します。
また、テーブル名を入力してから数式に左かっこを入力すると、列名と特殊識別子が選択対象として表示されます。
構造化参照の構文ガイドライン
- テーブル名は引用符や角かっこで囲む必要はない。
- 列名は、引用符で囲む必要はないが、角かっこで囲む必要がある。
- セル範囲の特定のサブセットを参照するには、以降で説明するシャープ記号 (#) とインジケータを使用する。
- ライブ データ領域に数式の列を含める際は、数式にテーブル名を含める必要はないが、列名の前にアットマーク (@) を含める必要がある。
- 数式を送信する際には、制約のない配列のキーボード ショートカットを押す: Ctrl + Alt + Enter キーまたは Ctrl + Alt + Shift + Enterキー (Windows)、Command + Option + Enter キー (Mac)。
構造化参照の特殊識別子
指定子 | 例 | 参照先 |
|---|---|---|
#All | [#All] | 列ヘッダーとデータを含むテーブル全体。 |
#Data | [#Data] | ヘッダーなしのデータ行のみ。 |
#Headers | [#Headers] | データなしのヘッダー行のみ。 |
#This Row または @ | 数式と同じ行にあるセルのみ。これらの指定子は、他の項目指定子と組み合わせることはできません。 これは、ライブ データの数式の列において、すべてのヘッダーの前に使用する必要があります。 例: =SUM([@Current Salary],[@Proposed Bonus]) |
構文の例
基本的な例:
=SUM(CompDetails[New Salary],CompDetails[Stock Amount])
メモ:
- この数式は 2 つの列の値を合計するもので、結果は新しい列に表示されます。テーブル名はCompDetailsです。
- 列名は"New Salary"と"Stock Amount"(角かっこ内) です。
次に示すテーブルの例では、ライブ データをワークブックに追加し、テーブルに
CompDetails
という名前を付けました。この列名が表示された画像を次に示します。
構造化参照 | 含まれる内容 | 示唆されるセル範囲 |
|---|---|---|
CompDetails または CompDetails[#Data] | テーブル内のすべてのデータ (列ヘッダー以外)。 | A2:G39 |
=CompDetails[[#All],[Proposed Bonus %]] | "Proposed Bonus %" 列のすべてのセル | F1:F39 |
=CompDetails[[#Headers],[Salary Increase %]] | "Salary Increase %" 列のヘッダー | E1 |
=CompDetails[[#All],[Compensation Grade]:[Salary Increase %]] | "Compensation Grade" 列から "Salary Increase %" 列までのすべてのセル (ヘッダーを含む) | B1:E39 |
=CompDetails[[Compensation Grade]:[New Salary]] | "Compensation Grade" 列から "New Salary" 列までのすべてのセル (ヘッダーを含まない) | B2:D39 |
=CompDetails[[#Headers],[Employee ID]:[New Salary]] | "Employee ID" 列から "New Salary" 列までのヘッダー | A1:D1 |
=CompDetails[[#Headers],[#Data],[Compensation Grade]] | "Compensation Grade" 列のヘッダーとデータ | B1:B39 |
=CompDetails[[#This Row], [New Salary]] または =CompDetails[@New Salary] | 現在の行 と "New Salary" 列との交点にあるセル | D5 (現在の行が 5 の場合) |
構造化参照と定義名の比較
定義名は、いくつかの点で構造化参照と似ていますが、顕著な違いもあります。次の表は、主な違いをまとめたものです。
定義名 | 構造化参照 |
|---|---|
定義名は、あらゆるワークブック範囲に対して作成できます。 | 構造化参照は、詳細レポート データのみが対象となり、ライブ データ領域内のデータのみを参照します。 |
定義名は、複数の列および行にわたるセルの固定範囲を指定します。また、"計算式" フィールドを使用して、数式、定数、または連続していない複数のセル範囲の名前を定義することもできます。 | 構造化参照は、テーブル名と列名を組み合わせて 1 つまたは複数のライブ データ列に存在するセルの動的な範囲を指定します。 |
定義名がライブ データ領域内にある場合、リフレッシュ中にデータが変更されても、セルの範囲は同じままです。 | 構造化参照によって参照されるデータは動的であり、ライブ データのリフレッシュ後には自動的に更新されます。 |
定義名パネル ("右ペイン") にすべての定義名が表示され、そこで確認および管理ができます。 | 構造化参照は単独のエンティティではなく、ライブ データ領域の一部として管理されるため、構造化参照に個別のパネルは必要ありません。 |
定義名は、Slides プレゼンテーションで使用できます。 | 構造化参照は、Slides プレゼンテーションで表示も使用もできません。 |
スライド プレゼンテーションのリンク テーブルで定義名を使用し、その後、その名前または範囲を変更した場合、更新後のデータを表示するには、プレゼンテーション内のリンク データをリフレッシュする必要があります。 スライド プレゼンテーションのリンク値で定義名の値を使用し、その後、定義名の範囲を編集したためリンク値が含まれなくなった場合は、リンク値を削除してから再度追加する必要があります。 | テーブル名や列名を変更できます。変更した場合、ワークシートでそのワークブック内における既存の構造化参照が更新されますが、以前のテーブル名または列名を含む外部参照 (コンシューマー ワークブック) がある場合、自動的に更新されることはありません。外部参照の詳細については、 を参照してください。 概念: 他のワークブック内のデータを参照する外部参照の使用。 |