ソース モジュールやリストでの値の検索、ターゲット モジュールでの値の表示に LOOKUP 関数を使用します。
たとえば、職位等級とリージョンに基づいて、モジュール内で各従業員の給与を検索し、それらを結果モジュールに表示できます。
構文
Values to look up[LOOKUP: Mapping, LOOKUP:Mapping 2, etc.]
同じ式で SUM と LOOKUP を同時に使用しないでください。これに従わなかった場合、計算時間が極めて長くなることがあります。詳細については、「式とモデルのパフォーマンスへの式の影響
引数
| 引数 | データ型 | 説明 |
| Values to look up | 数値、ブール値、日付、時間軸、リスト、又はテキスト形式のライン アイテム | 値を取得するデータ ソース。モジュールのライン アイテム module.lineitem かリスト プロパティ list.property を指定でき、すべてのデータ形式に対応しています。 |
| Mapping | リスト、日付、時間形式のライン アイテム、又はソースのプロパティ | ソースとターゲット間の値の照合に使用する相互参照条件です。データ型がリスト、日付、又は時間軸のライン アイテムか、ソースのプロパティを指定できます。 複数のマッピングを指定する場合は、この引数を繰り返し指定し、それぞれをカンマで区切ります。 注記:マッピングが機能するには、共通のディメンションでソースとマッピングの相互参照をリンクする必要があります。たとえば、Grade でマッピングする場合は、ソースモジュールと結果モジュールの両方で、Grade をディメンションとして使用している必要があります。 |
LOOKUP 関数は Values to look up と同じデータ型で結果を返します。
LOOKUP を使用するための手順
LOOKUP を使用するための手順は以下のとおりです。
- ターゲット モジュールでターゲット ライン アイテムの数式エディターを開きます。
- (ターゲット モジュールと異なる場合は) ソース モジュールを開き、ソースのライン アイテムかリスト プロパティを選択します。
- 数式エディターに「
[LOOKUP:」と入力します。 - (異なる場合は) マッピング条件を含むモジュールを開き、マッピングに使用するライン アイテムを選択します。以下のいずれかを選択できます。
- リスト データ型
- 時間軸または日付データ型
- リスト プロパティ
または、module.line item又はlist.propertyという形式を使用して、マッピング条件を手動で入力することもできます。
- マッピング条件が複数ある場合は、条件ごとにカンマで区切って、式を
]で閉じます。例:Pay Table.BasicPay[LOOKUP:Grade, LOOKUP: Region]
計算エンジンの機能の違い
| 動作 | Classic | Polaris |
| 複合階層の場合 | 集計アイテムの値を返します。 | 集計アイテムの値を返します。 |
| 非複合階層の場合 | ライン アイテムのデフォルト値を返します。 | 集計アイテムの値を返します。 |
| 結果ライン アイテムのタイム スケールがソース値より大きい場合 | 0 を返します。 | この構成では LOOKUP 関数を使用できません。 |
構文の例
Pay table.Basic pay[LOOKUP:Grade, LOOKUP: Region]
追加情報
LOOKUP を使用する状況の詳細については「数式の使用上のヒント」を参照してください。
制約
LOOKUP と時間軸
マッピング ライン アイテムのデータ型よりソース ライン アイテムのタイムスケールが細かい場合に LOOKUP を使用できます。マッピング ライン アイテムのディメンションよりもターゲット ライン アイテムのディメンションのタイムスケールが細かい場合にも LOOKUP を使用できます。
結果のタイム スケールがソースにない場合、LOOKUP で 0 が返されます。 たとえば、結果で半年の合計を選択し、それをソースで選択しなかった場合、LOOKUP では 0 が返されます。
ディメンション照合 (Polaris のみ)
Polaris では、以下の場合、LOOKUP は無効になります。
- ターゲット ライン アイテムがマッピング ライン アイテムを参照できない。
- ターゲット ライン アイテムのディメンションに関連付けられていないディメンションがマッピング ライン アイテムにある。これには、マッピング ライン アイテムがライン アイテム サブセットによってディメンション化される場合が含まれます。
同等の操作が行える Excel の関数
例
ソース モジュールやリストでの値の検索、マッピング条件を使用したターゲット モジュールでの値の表示に LOOKUP 関数を使用します。次の例は、モデル内のさまざまなシナリオでどのように LOOKUP を使用できるかを示したものです。各例を選択して展開します。
例 1:従業員の給与を職位等級 (Grade) に基づいて割り当てる
例 2:従業員の給与を職位等級 (Grade) とリージョン (Region) に基づいて割り当てる
例 3:リージョン (Region) と時間軸 (Time Period) を基に人件費を割り当てる