Note
コミュニティの関心グループが Yammer から Microsoft Viva Engage に移行されました。 Viva Engage コミュニティに参加し、最新のディスカッションに参加するには、「 Finance and Operations Viva Engage Community へのアクセスを要求する 」フォームに入力し、参加するコミュニティを選択します。
財務レポートでレポートを作成する場合は、追加の書式設定関数を使用できます。 これらの関数には、ディメンションのフィルター、列とレポート単位の制限、印刷されない行、および計算における IF/THEN/ELSE ステートメントが含まれます。
次の表では、レポートのデザイン時に使用できる高度な書式設定関数について説明します。
| 機能 | 説明 |
|---|---|
| 分析コード フィルター | 特定のデータ セットにアクセスするには、行定義と列定義でディメンションを使用します。 多くのレポートの行の書式設定のナチュラル区分のみ使用します。 ただし、ディメンション値を含むように行を変更できます。 列定義のディメンション フィルターを使用して、特定のディメンション値にアクセスします。 |
| [レポート単位の制限] | 特定のレポート ユニットにリンクされている情報のみを表示するようにレポート行を設定します。 |
| 非印刷 (NP) 行 | 印刷されない行は、多くのレポートで役立ちます。 値を取得するために複数の計算が必要な場合は、印刷レポートでこれらの計算を非表示にすることができます。 印刷されない行は、レポートデザインのトラブルシューティングや高度なセル配置にも役立ちます。 |
| [列の制限] | 行定義の列の制限は、レポートのある行にのみ関連する値を非表示にするために役立ちます。 行で比率計算を実行するときに、列の制限は、それらの数値が適用されない場合に合計列または他の列が印刷されることを防ぎます。 |
| 段区切り | 行定義に列区切りを追加して、レポート情報を並べて表示します。 1 つの行定義で複数の段区切りを追加することができ、列のヘッダーは段区切り後の各列の上部に繰り返されます。 レポートのコメントは、段区切りの間に表示されます。 |
| [IF/THEN/ELSE] 明細書 | 行定義または列定義の計算を変更します。 |
| 分析コード値には単一引用符 ('') およびアンパサンド (&) を使用します。 | レポート デザインのアンパサンド文字を含むディメンション値を使用します。 |
[高度な配置セル]
高度なセル配置 ( 強制) では、特定の値を特定のセルに配置する必要があります。 たとえば、強制を使用して、キャッシュ フロー ステートメントで正しい残高を移動します。 強制を使用する目的は次のとおりです。
- 値をMicrosoft Excelから特定のセルに移動します。
- 特定の値をレポートにハード コーティングします。
- 前のセルの値をコピーし、-1 でその値を掛けて符号を変更します。
Note
多くの場合、列の計算を行の計算の前に実行するには、レポート定義をコンフィギュレーションする必要があります。 この構成を完了するには、次の手順に従います。
- [レポート デザイナー] で、レポート定義を開きます。
- 設定タブの計算優先順位で、最初に列の計算、それから行の計算を実行を選択します。
[レポートのデザイン]
レポートをデザインするときは、最初にすべての詳細行を作成して、値が期待どおりにプルされるようにします。 その後、最終的な値を含む詳細を非表示にするよう NP、(印刷なし) 形式が上書きされます。
Important
行定義で CAL 形式コードを使用する場合、トランザクションの詳細にドリルダウンすることはできません。
強制の場合、数式は次の形式を使用します: <宛先列>=<元列>.<行のコード> 行の他の配置はコンマとスペースで区切ります。 例を次に示します。D=C.190,E=C.100
[高度な形式オプションの例]
次の例は、基本的なキャッシュ フロー レポート (例 1)、および統計レポート (例 2) を強制するための行定義および列定義の書式設定の方法を説明します。
例1: [基本の強制]
次の表に、基本の強制を使用する行定義の例を表示します。
| [行コード] | 説明 | [書式コード] | [関連するフォーミュラ / 行 / 単位] | 行のモディファイアー | [財務分析コードへのリンク] |
|---|---|---|---|---|---|
| 100 | 期間の開始時の現金 (NP) | 勘定のモディファイアー = [/BB] | + 区分 2 = [1100] | ||
| 130 | 期間の開始時の現金 | CAL | C=C.100、F=D.100 | ||
| 160 | |||||
| 190 |
Note
前の表には空の列が表示されません。[書式のオーバーライド]、[標準のバランス]、[印刷コントロール]、[列の制限]。
次の表に、行で基本の強制を使用する列定義の例を表示します。
| Format | A | B | C | D | E | 金 |
|---|---|---|---|---|---|---|
| ヘッダー 1 | ||||||
| ヘッダー 2 | A | B | C | D | E | 金 |
| ヘッダー 3 | ||||||
| 列タイプ | 行 | DESC | FD | FD | FD | CALC |
| 帳簿のコード / 属性カテゴリ | 実際 | 実際 | 実際 | |||
| 会計年度 | BASE | BASE | BASE | |||
| 期間 | BASE | BASE | BASE | |||
| [対象となる期間] | PERIODIC | YTD/BB | YTD | |||
| 式 | E-D | |||||
| 列の幅 | 5 | 30 | 14 | 14 | 14 | 14 |
例 2: [統計レポート]
次の表に、統計レポートに対して基本の強制を使用する行定義の例を表示します。
| [行コード] | 説明 | [書式コード] | [関連するフォーミュラ / 行 / 単位] | 形式の上書き | 通常残高 | [財務分析コードへのリンク] |
|---|---|---|---|---|---|---|
| 50 | 統計情報 | REM | ||||
| 100 | 人数 - 米国 | CAL | 4 | ###0.;($###0.) | ||
| 115 | 人数 - 国際 | CAL | 11 | ###0.;($###0.) | ||
| 130 | ||||||
| 190 | 米国の売上 | C | + 区分 2 = [41*]、区分 3 = [00] | |||
| 220 | 外国の売上 | C | + 区分 2 = [41*]、区分 3 = [01:99] | |||
| 250 | ||||||
| 280 | ||||||
| 310 | 米国の売上 | CAL | D=C.190、E=C.100、F= (C.100/C.190) | |||
| 340 | 外国の売上 | CAL | D=C.220、E=C115、F= (C.220/C.115) |
Note
前の表には、印刷コントロール、列制限、および行修飾子の列は表示されません。
次の表に、統計レポートに対して基本の強制を使用する列定義の例を表示します。
| Format | A | B | C | D | E | 金 |
|---|---|---|---|---|---|---|
| ヘッダー 1 | A | B | C | D | E | 金 |
| ヘッダー 2 | - | - | YTD | 年間の売上 | スタッフ | 個人別 $ |
| ヘッダー 3 | ||||||
| 列タイプ | 行 | DESC | FD | CALC | CALC | CALC |
| 帳簿のコード / 属性カテゴリ | 実際 | |||||
| 会計年度 | BASE | |||||
| 期間 | BASE | |||||
| [対象となる期間] | YTD | |||||
| 式 | E-D | |||||
| 列の幅 | 5 | 30 | 14 | 14 | 14 | 14 |
特定のレポート単位に行を制限
レポート行を特定のレポート単位に制限すると、その行には、名前付きレポート ユニットのリンク されたデータのみが表示され、レポート ツリー内の他のレポート ユニットのデータは無視されます。 たとえば、特定の部門の合計営業経費の詳細を提供する行を作成できます。 レポートにレポート ツリーと自然な勘定以上を含む行定義の両方が含まれるとき、レポートは重複したデータを含む場合があります。 たとえば、組織の 6 つの部門を一覧にするレポート ツリーがあり、行の勘定と部門の特定の組み合わせを一覧にする行定義があるとします。 レポートを生成すると、その部門がツリーにあるものと一致しない場合でも、勘定と部門の特定の組み合わせがレポート ツリーのすべてのレベルで印刷されます。 この動作は、レポート定義が通常除外する内容を行がオーバーライドするためです。データの重複を回避する方法の 1 つは、行を特定のレポートユニットに制限することです。
Note
行が分析コードを含み、その行をレポートの子単位に制限する場合、行の金額はその子単位と親単位に含まれますが、重複は発生しません。
[レポート単位に行を制限]
- レポート デザイナーで、Row Definitions を選択し、変更する行定義を選択します。
- 適切な 関連するフォーミュラ/行または単位 セルをダブルクリックします。
- [ レポート単位の選択 ] ダイアログ ボックスの [ レポート ツリー ] フィールドで、レポート定義で割り当てたツリーを選択します。
- レポート単位を選択し、[ OK] を選択します。 制限は、行定義のセルに表示されます。
- 制限された行の [ 財務分析コードへのリンク ] 列のセルをダブルクリックし、財務データ システムへのリンクを入力します。
行定義で印刷コントロールを選択
印刷コントロールセルを使用して、列ごとに印刷コントロール コードを指定できます。
レポート行に印刷コントロール コードを追加
- レポート デザイナーで、変更する行定義を開きます。
- 印刷コントロールセルをダブルクリックします。
- 複数コードを選択するには、印刷コントロールダイアログ ボックスで、印刷コントロール コードを選択、またはCtrl キーを押しながら選択します。 印刷コントロールセルに、直接印刷コントロール コードを入力することもできます。 コンマを使用して複数の印刷コントロール コードを区切ります。
- 条件付印刷オプションを選択します。
- [OK] を選択.
通常の印刷コントロール コード
次の表に、行定義に対する通常の印刷コントロール コードを説明します。
| 印刷コントロール コード | 印刷コントロール コードの解釈 | 説明 |
|---|---|---|
| NP | 印刷されない行 | 行の金額をレポートに印刷しないようにし、計算から金額を除外します。 計算にノン プリンティングの列を含めるには、計算式の列を直接参照してください。 たとえば、非印刷行 240 は、次の計算に含まれています: 230+240+250。 ただし、印刷されない行 240 は、 230:250 の計算には含まれません。 |
| CS | 通貨記号 ; この行で通貨の形式を使用 | すべての非百分率の金額に通貨記号を含めます。 割合値は、通貨記号を受け入れません。 |
| XD | 勘定の詳細レポートの行を抑制 | 勘定の詳細レポートおよびトランザクションの詳細レポートの勘定の表示を抑制します。 この印刷コントロールは、行に複数のアカウントが含まれ、アカウント詳細レポートまたはトランザクション詳細レポートに一覧表示されない場合に便利です。 |
| X0 | すべてゼロの場合行を抑制 | 行のすべてのセルが空白であるか、ゼロである場合、レポートから行を除外します。 この印刷コントロールは、残高ゼロを抑制するオプションがレポート定義で選択されていない場合にのみ意味があります。 |
| B0 | ゼロ列を空白のままにする | 金額ゼロを含む行の列を空のままにします。 |
| XR | ロールアップの抑制 | ロールアップを抑制します。 レポートがレポート ツリーを使用する場合、この行の金額は、後続の親ノードにロールアップされません。 |
| SR | 丸めの抑制 | この行の金額が丸められることを防止します。 |
| XT | トランザクションの詳細レポートの行を抑制 | トランザクションの詳細レポートのトランザクションの表示を抑制します。 この印刷コントロールは、1 つの行にトランザクション詳細レポートに一覧表示すべきでない複数のアカウントが含まれている場合に便利です。 |
条件付印刷コントロール コード
次の表で、行定義に対する条件付印刷コントロール コードについて説明します。
| 印刷コントロール コード | 説明 |
|---|---|
| (なし) | 条件付印刷選択をクリアします。 |
| DR | この行の借方残高のみを印刷します。 |
| CR | この行の貸方残高のみを印刷します。 |
列定義の [列制限] セル
行定義の [ 列の制限 ] セルは、複数の目的で機能します。 行タイプに応じて、列の制限セルを使用して、次の機能の 1 つを指定します :
- 行の量の印刷を特定の列に制限します。 この機能は、表形式の貸借対照表を作成する場合に便利です。
- 並べ替える量の列を指定します。
行定義の計算式を使用
行定義の計算式には +、-、*、/ 演算子、IF/THEN/ELSE ステートメントを含めることができます。 また、計算には、個々のセルと絶対金額 (フォーミュラに含まれる実際の数値) を含めることができます。 式には、最大 1,024 文字まで入力できます。 財務分析コードへのリンク (FD) 型のセルを含む行に計算を適用することはできません。 ただし、連続した行の計算を含め、その行の印刷を抑制し、計算行を合計することができます。
計算式の演算子
計算式は行の合計式より複雑な演算子を使用します。 *演算子と/演算子を他の演算子と共に使用して、 (*) と除算 (/) の量を乗算できます。 行定義で列を使用する場合を除き、計算式で範囲または合計を使うには、行コードの前でアット マーク (@) を使用する必要があります。 たとえば、行 100 の金額を行 330 の金額に追加する場合、行の合計式 100+330 または、計算式 @100+@330 を使用できます。
Note
計算式で使用するすべての行コードの前にアット マーク (@) を使用する必要があります。 それ以外の場合、数値は絶対額として読み取られます。 たとえば、@100+330 の式は行 100 の金額に USD 330 を追加します。 計算式の列を参照する場合に、アット マーク (@) は必要ではありません。
計算式の作成
- レポート デザイナーで[ 行定義]を選択し、変更する行定義を開きます。
- [ コードの書式設定 ] セルをダブルクリックし、[ CAL] を選択します。
- 関連するフォーミュラ / 行 / 単位セルで、計算式を入力します。
特定の行の計算式の例
この例では、計算式 @100+@330 によって行 100 の金額が行 330 の金額に加算されます。 行の合計の式 340+370 では行 370 の金額に 行 340 の金額を追加します。 (行 370 の金額は計算式から取得されます)。
| [行コード] | 説明 | [書式コード] | [関連するフォーミュラ / 行 / 単位] | 印刷コントロール | 行のモディファイアー | [財務分析コードへのリンク] |
|---|---|---|---|---|---|---|
| 340 | 期間の開始時の現金 | NP | BB | + アカウント =[1100:1110] | ||
| 370 | 年度の開始時の現金 | CAL | @100+@330 | NP | ||
| 400 | 期間の開始時の現金 | TOT | 340+370 |
書式コード CAL を行定義の行に割り当て、[ 関連する数式/行/単位] セルに数学的計算を入力する場合は、レポートの関連する列と行の文字も入力する必要があります。 たとえば、A.120 を入力して、列 A、行 120 を表します。 または、アット マーク (@) を使用して、すべての列を表すことができます。 たとえば @120 を入力して、行 120 のすべての列を表します。 列文字またはアットマーク (@) を含まない数学的計算は、実数と見なされます。
Note
ラベル行コードを使用して行を参照する場合、文字列とラベルの区切りとしてピリオド (.) を使用する必要があります (たとえば A.GROSSMARGIN/A.SALES など)。 アット マーク (@) を使用する場合、区切り記号は必要ではありません (@GROSSMARGIN/@SALES など)。
特定の列の計算式の例
この例で、計算式 E=C.340 は、列 C のセル、行 340 の計算が列 E にのみ実行されることを意味します。
Note
計算式の列を参照する場合に、アット マーク (@) は必要ではありません。
| [行コード] | 説明 | [書式コード] | [関連するフォーミュラ / 行 / 単位] | 印刷コントロール | 行のモディファイアー | [財務分析コードへのリンク] |
|---|---|---|---|---|---|---|
| 340 | 期間の開始時の現金 | NP | BB | + アカウント =[1100:1110] | ||
| 370 | 年度の開始時の現金 | CAL | E=C.340 | NP | ||
| 400 | 期間の開始時の現金 | TOT | 340+370 |
選択した列の数値の変更
特定の行の 1 つの列の数値または計算を変更しても、レポートの他の列に影響を与えたくない場合は、行定義の [コードの書式設定] 列に CAL (計算) を指定します。
- すべてのレポート FD 列で計算を実行するには、列の割り当てを入力しないでください。
- 特定の列に式を制限するには、列の文字、等号 (=)、および式を入力します。
- 複数の列を指定できます。 特定の列の配置を含むアット マーク (@) を使用すると、アット マーク (@) は行に関連付けられます。
- 1 つの行に複数の列の式を入力できます。 コンマを使用してフォーミュラを区切ります。
計算の例
| 計算 | 作成されたアクション |
|---|---|
| @130*.75 | すべての列で、行 130 の値に 0.75 が乗算されます。 結果は、すべての列で現在の行に書き入れられます。 |
| B=@130*.75 | 同じ計算は、列 B でのみ実行されます。 |
| A,B,C=(@100/@130)*.75 | A=(A.100/A.130)*.75 B=(B.100/B.130)*.75 C=(C.100/C.130)*.75 |
行定義の [IF/THEN/ELSE] 明細書
IF/THEN/ELSE ステートメントを任意の有効な計算に追加し、CAL 形式で使用できます。 関連する数式/行/単位列のセルに、IF/THEN/ELSE計算式を入力します。 IF/THEN/ELSE 計算式は次の形式を使用します : IF <true/false ステートメント> THEN <式> ELSE <式> ステートメントの ELSE <式> の部分はオプションです。
[IF] 明細書
IF 明細書に続く明細書は true または false として評価できる明細書です。 IF ステートメントの後に続くステートメントには、単純な評価が含まれる場合もあれば、複数の式を含む複雑なステートメントである場合もあります。 次にいくつか例を挙げます。
- IF A.200>0 (簡単な評価)
- IF A.200>0 AND A.200<10,000 (複雑なステートメント)
- IF A.200>10000 OR ((A.340/B.1200)*2 <1200) (複数の式を含む複雑なステートメント)
IF 明細書の期間は、レポートの期間数を表すものです。 この用語を使用して、年累計平均を計算します。 たとえば、7 YTD 期間のレポートを実行すると、B.150/Periods 明細書は、列 B の行 150 の値を 7 で除算することを意味します。
[THEN] および [ELSE] フォーミュラ
THEN および ELSE 数式には、単純な値の代入から複雑な数式まで、任意の有効な計算を指定できます。 たとえば、IF A.200>0 THEN A=B.200 ステートメントは、「行 200 の列 A のセルの値が 0 (ゼロ) 以上の場合、行 200 の列 B のセルの値を現在の行の列 A に挿入します」という意味です。前の IF/THEN 明細書は、現在の行の 1 つの列に値を挿入します。 ただし、true/false 評価またはすべての列を表す式で、アット マーク (@) を使用できます。 次のセクションで説明されている他の例を次に示します :
- IF A.200 >0 THEN B.200 : セル A.200 の値がプラスの場合、セル B.200 の値は現在の行のすべての列に入力されます。
- IF A.200 >0 THEN @200: セル A.200 の値がプラスの場合、行 200 の各列の値は現在の行の対応する列に入力されます。
- IF @200 >0 THEN @200: 現在の列の行 200 の値がプラスの場合、行 200 の値は現在の行の同じ列に入力されます。
行定義のレポート単位に計算を制限
計算をレポート ツリー内の 1 つのレポート単位に制限し、結果の量が上位レベルの単位にロールアップされないようにするには、行定義の [関連する数式/行/単位] セルの@Unit コードを使用します。 @Unit コードはレポート ツリー Unit Name の列 B に一覧表示されます。 @Unit コードを使用する場合、値はロールアップしませんが、計算はレポート ツリーのすべてのレベルで評価されます。
Note
この機能を使用するには、レポート ツリーが行定義と関連付けられている必要があります。
計算行は計算行または財務データ行を参照できます。 計算は、行定義の [関連する数式]、[行]、[単位] セル、および財務データ型の制限に記録します。 計算は、IF \@Unit 構成で始まる条件付計算を使用する必要があります。 例を次に示します。IF @Unit(SALES) THEN @100 ELSE 0 この計算には、レポートのすべての列の行 100 からの量が含まれますが、SALES 単位に対してのみ含まれます。 複数の単位が [販売] という名前の場合は、金額は、各単位に表示されます。 さらに、行 100 は財務データ行にすることができ、非印刷として定義できます。 この場合、ツリーのすべての単位に金額が表示されることが阻止されます。 列 H など、レポートのその列のみに値を印刷するよう列制限を使用することにより、レポートの単一の列に金額を制限することもできます。 明細書 IF 明細書に OR の組み合わせを含める ことができます。 例を次に示します。 IF @Unit(SALES) OR @Unit(SALESWEST) THEN 5 ELSE @100。 次のいずれかの方法で、1 つの計算タイプの制限で単位を指定します。
- 一致する単位を含むする単位の名前を入力します。 たとえば IF \@Unit(SALES) は、レポート ツリーに複数の販売単位である場合、[SALES] という名前のすべての単位の計算を有効にします。
- 特定の会社の特定の単位に計算を制限するには、会社および単位の名前を入力します。 たとえば、IF @Unit(ACME:SALES) と入力して、ACME 会社の販売単位に計算を制限します。
- レポート ツリーから完全な階層コードを入力して、特定の単位に計算を制限します。 たとえば、IF @Unit(SUMMARY^ACME^WEST COAST^SALES) と入力します。
Note
完全な階層コードを検索するには、レポート ツリー定義を右クリックし、レポート ユニット識別子 (H-code) のコピー を選択します。
レポート ユニットに計算を制限
- レポート デザイナーで[ 行定義]を選択し、変更する行定義を開きます。
- [ コードの書式設定 ] セルをダブルクリックし、[ CAL] を選択します。
- [ 関連する数式/行/単位] セルを選択し、 IF @Unit 構築で始まる条件付き計算を入力します。
列定義の [IF/THEN/ELSE] 明細書
IF/THEN/ELSE 明細書は、どの計算も他の列の結果に依存させることができます。 他の列を参照することはできますが、IF 明細書のレポート セルは参照できません。 列全体に計算を適用する必要があります。 たとえば、IF B>100 THEN B ELSE C*1.25 ステートメントは、列 B の金額が 100 より多い場合、列 B の値を CALC 列に挿入します。 列 B の金額が 100 を超えない場合は、列 C の値を 1.25 で乗算し、結果を CALC 列に入力します」という意味です。常に true または false として評価できるロジック明細書を使用して、IF 明細書に従います。 THEN および ELSE 明細書の両方に使用するフォーミュラは、任意の数の列の参照を含み、また、これらのフォーミュラを必要に応じて複雑にすることができます。
Note
他の列には計算の結果を入力できません。 結果は式を含む列にする必要があります。
行、列、またはツリーの分析コード値には単一引用符およびアンパサンドを使用します。
アンパサンドを含む分析コード値を使用してレポートを設計できます。
任意の財務分析コードにリンクのフィールド内に、'P&L' のような値を入力します。 次元値の両側に単一引用符 (' ') を含めると、(> アンパサンド文字など) リテラル値を使用していることを示します。