全て展開このトピックで配列数式の使用このトピックでForguncyではExcelの配列数式をサポートしています。配列数式がどのようなもので、どのようなことができるのかという部分については、Excelの配列数式を解説した資料を参照してください。このページでは、Forguncyで配列数式を使用する場合の例を示します。Forguncyでは結合セルであっても配列数式を使用することが可能ですが、ExcelやPDFへとエクスポートした場合にはセル結合が自動的に解除されます。これはExcelが結合セルにおける配列数式をサポートしていないことに準じた動作です。条件に合致した行の中から最大値を算出する以下のようなデータがリストビューに表示されている場合に、出荷先市区町村が「千代田区」である人の中から最も高い売上を表示する方法を説明します。Forguncyの場合、支社ごとの年齢の最大値は集計フィールドの機能を使用することで表示可能です。集計対象の全データをリストビューに表示したうえで、特定の出荷先市区町村の最も高い売上だけを表示したい場合には、数式配列を使用します。Enterキーを押します。配列数式は、数式バー上ではカーリーブラケットで括られたかたちで表示されます。数式や関数のパラメーターでリストビューの行テンプレート上の単一セルを指定した場合、それはリストビューのその列全体のセル範囲を指定したことと等価です。上の例で、リストビューではなく通常のセルにデータが一覧表示されていた場合、「=MAX(IF(P3:P13="千代田区",T3:T13,""))」という数式になります。[ホーム]→[開始(デバッグ)]をクリックし、配列数式が正しく実行されていることを確認します。配列数式でODATA関数を使用して一覧データを表示するForguncyでテーブルのデータをページに一覧表示させる場合、通常はリストビューを使用します。使用したい関数のパラメーターがリストビュー上のセルをサポートしていない場合など、リストビューではなく通常セルにテーブルのデータを一覧表示させたい場合があります。このような場合、配列数式でODATA関数を使用することにより、通常セルにテーブルのデータを一覧表示させることができます。ODATA関数の使い方については、ODataを参照してください。Categoriesテーブルには以下のようなフィールドが定義され、データが格納されています。Categoriesテーブルの「CategoryID」、「CategoryName」、「Description」の3つのフィールドの全レコードを、配列数式とODATA関数を使用してページの通常セルに一覧表示させる手順を以下に示します。Enterキーを押します。})で括られていることを確認します。配列数式は、数式バー上ではカーリーブラケットで括られたかたちで表示されます。[ホーム]→[開始(デバッグ)]をクリックし、配列数式が正しく実行されていることを確認します。リストビューのテンプレート行内のセルへの参照(Excelエクスポート/PDFエクスポート)数式においてリストビューのテンプレート行内のセルを参照した場合、その参照範囲はリストビューのレコード数によって変化します。この動作は配列数式の場合でも同様です。本仕様により、Excelエクスポート/PDFエクスポートの結果は、リストビューのレコード数が1以下の場合と2以上の場合で異なるものとなります。上の図のようにリストビューのテンプレート行内のセルであるC3を配列数式で「{=C3}」のように指定している場合で説明します。リストビューのレコード数は3であるため、Excelファイルへのエクスポート結果は「{=$C$3:$C$5}」となり上の図のような結果となります。リストビューのレコード数が1の場合、Excelファイルへのエクスポート結果は「{=$C$3:$C$3}」となり上の図のような結果となります。配列数式においてセル範囲が1つのセルのみを返す場合にすべて同じ値となる動作は、Excelの配列数式における仕様です。ForguncyのPDFエクスポートはExcelの仕様に基づいて行われるため、PDFエクスポートでも同様の結果となります。アプリケーション実行時のWebページ上の表示結果とは異なることに注意してください。