配列数式を使用する

ForguncyではExcelの配列数式をサポートしています。

配列数式がどのようなもので、どのようなことができるのかという部分については、Excelの配列数式を解説した資料を参照してください。このページでは、Forguncyで配列数式を使用する場合の例を示します。

条件に合致した行の中から最大値を算出する 

以下のようなデータがリストビューに表示されている場合に、支社が「北九州支社」である人の中から最も高い年齢を表示する方法を説明します。Forguncyの場合、支社ごとの年齢の最大値は集計フィールドの機能を使用することで表示可能です。しかし、集計対象の全データをリストビューに表示したうえで、特定の支社の年長者の年齢だけを表示したい場合には、数式配列を使用します。

1 北九州支社の年齢の最大値を表示するセルに「=MAX(IF(L3="北九州支社",I3,""))」と入力し、Ctrl + Shift + Enterキーを押します。

数式や関数のパラメーターでリストビューの行テンプレート上の単一セルを指定した場合、それはリストビューのその列全体のセル範囲を指定したことと等価です。上の例で、リストビューではなく通常のセルにデータが一覧表示されていた場合、「=MAX(IF(L3:L11="北九州支社",I3:I11,""))」という数式になります。

2 先ほど設定した数式がカーリーブラケット({ })で括られていることを確認します。

配列数式は、数式バー上ではカーリーブラケットで括られたかたちで表示されます。

3 [ホーム]→[開始(デバッグ)]をクリックし、配列数式が正しく実行されていることを確認します。

 

配列数式でODATA関数を使用して一覧データを表示する

Forguncyでテーブルのデータをページに一覧表示させる場合、通常はリストビューを使用します。しかし、たとえば使用したい関数のパラメーターがリストビュー上のセルをサポートしていない場合など、リストビューではなく通常セルにテーブルのデータを一覧表示させたい場合があります。このような場合、配列数式でODATA関数を使用することにより、通常セルにテーブルのデータを一覧表示させることができます。

ODATA関数の使い方については、ODataを参照してください。

Categoriesテーブルには以下のようなフィールドが定義され、データが格納されています。

Categoriesテーブルの「CategoryID」、「CategoryName」、「Description」の3つのフィールドの全レコードを、配列数式とODATA関数を使用してページの通常セルに一覧表示させる手順を以下に示します。

1 ページのB3セルからD12セルの範囲を選択し、数式バーに「=IFERROR(ODATA("Categories"),"")」と入力して、Ctrl + Shift + Enterキーを押します。

 2 先ほど設定した数式がカーリーブラケット({ })で括られていることを確認します。

配列数式は、数式バー上ではカーリーブラケットで括られたかたちで表示されます。

3 [ホーム]→[開始(デバッグ)]をクリックし、配列数式が正しく実行されていることを確認します。