マルチシート テンプレートは複数のシートにまたがるレポートを柔軟に作成する手段であり、作成される各シートの構造は変化する可能性があります。最終的なマルチシート レポートは、Excel で設計された単一のテンプレートから生成されます。テンプレート デザイナーは、使用可能な列と行のメンバーのセットの範囲を定義してから、出力シートごとにそれらを組み合わせる方法を定義します。
マルチシート テンプレートは Anaplan XL のフリーフォーム レポートの機能に基づいており、マルチシート レポートのコンテキストでこれらを柔軟に定義する方法を提供します。
たとえば、二つの列セットと二つの行セットを定義し、これを使用して四つの出力シートを作成できます。
この出力では

こちらの構成テンプレートを使用して

こちらのマルチシート出力を作成

仕組み
この機能により、スケジュールで出力ワークブックに複数のワークシートを作成できるようになります。
出力シートの構成に基づいて、Anaplan XL では次の処理を実行します。
- 必要なシートを作成します。
- そのシートに定義されているメンバーをコピーします。メンバーのすべての書式設定は出力シートに引き継がれます。
- 列メンバーと行メンバーの交差点では、モデルからデータが取得されてワークシートに追加されます。データの書式設定はすべて保持されるため、数値の書式、太字の合計行、又はハイライト表示された背景を追加できます。
データ取得機能はフリーフォーム レポートと同じように動作し、多くの設定が共通しています。
基本構成
テンプレート ブックには、データの取得に使用されるモデルへの接続が少なくとも一つ含まれている必要があります。複数の接続を作成し、シートごとに異なる接続を使用することもできます。これについては後ほど説明します。
Anaplan XL Web に公開するときに適切に処理されるようにワークブックを識別するには、[Workbook Options] → [Publication] 画面で [Workbook is a multisheet template] オプションをオンにする必要があります。
出力シートの構成は SheetsConfig という Excel の名前付き範囲内にある必要があり、少なくとも以下の列が含まれている必要があります。
SheetName | 作成する出力シートの名前。 |
ColumnMembers | 列メンバーを含む範囲の名前。 |
RowMembers | 行メンバーを含む範囲の名前。 |
ColumnMembers 範囲と RowMembers 範囲は同じワークシート上にある必要がある点に注意してください。テンプレートのメンテナンスが簡単になる場合は、他の名前を別のシートに記述できます。
メンバーを所属する階層にリンクできるように、ColumnHierarchies
と RowHierarchies
に名前付き範囲も設定する必要があります。多数の列セット又は行セットに同じ階層がある場合は、それらに対してワークブック名を作成できます。
上記の例では、各列/行メンバー セットで異なる階層が使用されているため、各行でこれらの設定を上書きしています。一般に、特定の設定に対してワークブックに Excel 名を設定でき、必要に応じて構成行ごとにこれを上書きできます。
ここでは、シート構成領域と、それぞれの列領域と行領域に対して Excel で作成された名前を確認できます。
フィルター
シートにフィルターを追加する方法は以下の通りです。
- シートに使用するフィルターを含む Excel 範囲の名前を指定します。
- 生成されるすべてのシートにデフォルトのフィルターを提供するために、FilterArea という名前付き範囲を追加します。
この範囲にはちょうど二つの列が必要であり、各行には階層の名前と、それに続くフィルター対象のメンバーが含まれている必要があります。

追加の構成列
作成された各シートの出力を制御するために、構成テーブルに追加の列を含めることができます。これらはいずれも必須ではありません。
TabColor | Excel のワークシート タブの色。 |
ConnectionID | 使用する接続の ID (ワークブック内の最初の接続でない場合)。 |
StartColumn/StartRow | 生成されるワークシートの出力を開始する位置。デフォルトは 2,2 セル $B$2 です。 |
NullReplacement | Null セルに入力する内容。デフォルトでは空白のままになります。 |
MemberMode | メンバー テキストの解釈方法。使用できる値は Validate/Caption/Key/UniqueName です。 |
InvalidMemberReplacement | メンバーが無効な場合にセルに入力する内容。 |
BlankHandling | メンバー セル内の空白を処理する方法。使用できる値は CopyPrevious/DefaultMember/Error です。デフォルトは CopyPrevious です。 |
ReplaceFormulaeWithValues | データ領域内の計算を固定値に置き換える必要があります。 |
構成テーブルに同じ名前の列を追加して、デフォルトを上書きすることもできます。たとえば、FilterArea という列を追加して別の Excel 名前付き範囲を指定し、ワークブック内のデフォルトの FilterArea 名前付き範囲を上書きできます。
計算
列と行が交わるデータ領域に式を入力すると、列と行の領域に計算を追加できます。これらは出力ワークシートに反映されます。

ヘッダーとフッター
SheetHeader 又は SheetFooter という名前付き範囲を作成することで、各出力ワークシートにヘッダー又はフッターを追加できます。SheetHeader/SheetFooter という列を追加し、出力シートのセル内に別の名前を入力することで、構成テーブルでこの名前を上書きできます。
ヘッダー/フッター領域は、作成されたシートのデータと同じ幅になるようにコピーされます。コピーしたときに見栄えがよくなるように、右に拡張する書式設定を追加する必要があります。

代替列/行タイトル
必要な数値を取得するために複数のディメンションにわたるメンバーの組み合わせが必要であるものの、最終レポートにすべてのメンバーを表示したくないことがあります。
これを実現するには、実際のメンバーの左側/上部に意味のある説明を追加してから、ユーザーに対してメンバーを非表示にします。
テキストがターゲット シートにコピーされるように、構成するメンバー領域に説明を含める必要があります。最後の列または行のみがデータベース クエリのメンバーとして使用されます。実際のメンバーの数は、Column/RowHierarchies 名前付き範囲内の階層の数によって指定されます。
たとえば、行にアカウントと予算タイプの二つの階層を指定した場合、最終レポートでさらに有用なテキストの説明を追加できます。

列と行の構成
一部の設定は列または行ごとに構成できます。この場合、指定した名前で列または行全体の名前付き範囲を作成し、テンプレートの生成時に各セルの設定が読み取られます。
たとえば、一部の列を非表示にするには、ColumnHidden
という名前付き範囲を作成し、一部の値を True に設定します。
以下のケースでは、列 $E:$E と $I:$I が結果ファイル内で非表示になります。

以下の設定を利用できます。
ColumnHidden/RowHidden | 指定された列/行を非表示にします。デフォルトは false です。 |
ColumnNumberScaling/RowNumberScaling | 数値の結果を拡大縮小します。数値を千/百万/十億の単位で表示したい場合に使用できます。これにより、セル内の実際の数値が変更されます。これを望まない場合は、代わりに数値書式を使用して表示のみを変更します。使用できる値は、千、百万、十億、兆を表す一文字 K、M、B、T です。数字を入力して結果を掛け合わせることもできます。たとえば、-1 はすべての結果の記号を入れ替えます。 |
出力変数
レポート生成時に入力される特別な値を含む Excel 名を作成できます。これは、シート名に基づいて一部の設定を変更するのに役立ちます。
SheetName | 作成されるシートの名前。 |
RunDate | 生成の日付/時刻。 |