MESCIUS SPREAD for Windows Forms 15.0J
動的配列数式

SPREAD for Windows Formsでは、配列数式を拡張した動的配列数式がサポートされています。動的配列数式は、セル範囲を自動スピルおよび範囲指定することで、複数の結果を出力として返し、スプレッドシート内の配列数式を簡単ですばやく処理できます。

動的配列数式は、「Ctrl + Shift + Enter」で入力する従来の配列数式を置き換えるために使用されます。以前は、計算結果を表示するすべてのセルに数式を手動でコピーして入力する必要があったので、スプレッドシートで数式を操作するのは面倒で時間がかかりました。動的配列数式は、セル範囲を自動スピルおよび範囲指定することで、複数の結果を出力として返します。これにより、全体的なオーバーヘッドが大幅に削減され、スプレッドシート内の配列数式を簡単ですばやく処理できます。

動的配列数式は、次の場合に役立ちます。

スピル配列数式

スプレッドシートのセル範囲にて複数の値を返し、正常にスピルされている数式を、スピル配列数式と呼ばれます。複数の行と列に結合する結果を含むセル範囲は、スピル範囲と呼ばれます。ユーザーがスピル範囲内のセルを選択すると、青い色の境界線がセル範囲を囲みます。

メモ:スピル配列数式は、テーブルではサポートされていません。しかし、多数の行と列にスピルする動的配列数式を操作する場合、スプレッドシートで使用されるセル範囲は、テーブルのように書式できます。

動的配列数式の例

  1. UNIQUE
  2. SORT
  3. SORTBY
  4. SEQUENCE
  5. RANDARRAY
  6. SINGLE
  7. FILTER

UNIQUE

UNIQUE関数は、セル範囲内のすべての一意の値の一覧を返します。

たとえば、セルC4で設定されている数式「=UNIQUE(A4:A15)」がセル範囲A4~A15の値から一意の顧客名のみを返します。次の図で示すように、 一意の値の数に基づいて、動的配列式はセル範囲C5~C8に自動的にスピルされます。

unique-example

SORT

SORT 関数を使用することで、範囲または配列のデータを並べ替えます。本関数の結果は、昇順(増加)または降順(減少)で並べている値の動的配列を持つ範囲になります。

たとえば、セルD4で設定されている数式「=SORT(A4:A15)」が、昇順で並べ替えられている顧客名を返します。

sort-example

セルA4~A15の範囲内のすべての一意の値を並べ替えるには、列C4に表示される一意の一覧にSORT関数を適用するか、SORT関数とUNIQUE関数を組み合わせて単一の数式として使用できます。

たとえば、セルE4で設定されている数式「=SORT(C4#)」(「#」は一覧を示す)が、列C(セルC4ではすでにUNIQUE関数「=UNIQUE(A4:A15)」が設定されている)の値のリストをソートし、結果を列Eに表示します。

または、SORTとUNIQUEの両方の関数を組み合わせることもできます。 たとえば、次の図では、セルF4に数式「=SORT(UNIQUE(A4:A15))」が設定されていて、A4:A15の範囲内のすべての一意の値がアルファベット順に並べ替えられます。

 

SORTBY

SORTBY 関数は、範囲または配列の内容を、対応する範囲または配列の値に基づいて並べ替えます。

たとえば、セルG4で設定されている数式「=SORTBY(A4:B15,B4:B15)」が、セル範囲A4~B15を別のセル範囲B4~B15に基づいて並べ替え、顧客名を年齢昇順で並べ替えて表示します。

sort-by-example

SEQUENCE

SEQUENCE関数は、連続した数値の一覧を昇順で配列として返します。

たとえば、セルA2で設定されている数式「=SEQUENCE(4,5)」が、1、2、3、4など(20まで)の数値を順序で4行5列のセル範囲で並べた配列返します。

sequence-example

RANDARRAY

RANDARRAY 関数は、ランダムな数値の配列を返します。行と列の数、最小値と最大値、および整数または 10 進数の値を返すかどうかを指定できます。

たとえば、次の図では、セルA8に設定されている数式「=RANDARRAY(5,3)」が0~1の範囲の乱数値セットを返します。

randarray_example

SINGLE

SINGLE関数は、共通部分ロジックを使用して、単一の値、単一のセル範囲、またはエラーを返します。

たとえば、セルA15で設定されている数式「=SINGLE(A15:E15)」が、セル範囲A15〜E15の行と列の共通 部分を評価してセルC16にその結果「C」を返します。

single-example

FILTER

FILTER関数を使用することで、定義されている条件に基づいてセル範囲をフィルタできます。フィルタ操作では、単一または複数の条件を適用できます。 2つ以上のフィルタ条件を組み合わせて使用するには、「*」演算子を使用できます。

たとえば、セルF5で設定されている数式「=FILTER(A5:D17, C5:C17=F1)」があるフィルター条件(セル範囲C5~C17がセルF1の値りんごと一致する場合)に基づいてセル範囲A5~D17をフィルタします。セル範囲A5~D17内に製品が「りんご」となっている項目がすべて表示されます。

この図では、セルF14で設定されている数式「=FILTER(A5:D17, (C5:C17=F1)*(A5:A17=F2))」が、乗算演算子(*)を使用することで、セル範囲A5~D17に2つのフィルタ条件を適用します。最初の条件は、セル範囲C5~C17がセルF1の製品値「りんご」に一致することです。また、2番目の条件は、セル範囲A5~A17が地域「東」に一致することです。その結果、セル範囲A5~D17から製品が「りんご」および地域が「東」となっている項目がすべて表示されます。

filter_array

コードの使用

次のサンプルコードは、スプレッドシートで動的配列関数を使用する方法を示しています。

C#
コードのコピー
// 動的配列を有効にするには、CalcFeatures列挙をDynamicArrayに設定する必要があります。
fpSpread1.AsWorkbook().WorkbookSet.CalculationEngine.CalcFeatures |= CalcFeatures.DynamicArray;
fpSpread1.Sheets[0].FrozenRowCount = 1;
fpSpread1.Sheets[0].Cells[0, 0].Text = "Dynamic Array Functions";
fpSpread1.Sheets[0].Cells[0, 0].BackColor = System.Drawing.Color.LightGray;
fpSpread1.Sheets[0].AddSpanCell(0, 0, 1, 3);
// Sheet[0]のセルにデータを設定します。
fpSpread1.Sheets[0].Cells[2, 0].Text = "名前";
fpSpread1.Sheets[0].Cells[2, 0].BackColor = System.Drawing.Color.LightGray;
fpSpread1.Sheets[0].Cells[3, 0].Text = "Larry";
fpSpread1.Sheets[0].Cells[4, 0].Text = "Safeway";
fpSpread1.Sheets[0].Cells[5, 0].Text = "Safeway";
fpSpread1.Sheets[0].Cells[6, 0].Text = "Raley";
fpSpread1.Sheets[0].Cells[7, 0].Text = "Vallarta";
fpSpread1.Sheets[0].Cells[8, 0].Text = "Safeway";
fpSpread1.Sheets[0].Cells[9, 0].Text = "Raley";
fpSpread1.Sheets[0].Cells[10, 0].Text = "Larry";
fpSpread1.Sheets[0].Cells[11, 0].Text = "Gilbert";
fpSpread1.Sheets[0].Cells[12, 0].Text = "Larry";
fpSpread1.Sheets[0].Cells[13, 0].Text = "Larry";
fpSpread1.Sheets[0].Cells[14, 0].Text = "Raley";
fpSpread1.Sheets[0].Columns[0].Width = 120;
fpSpread1.Sheets[0].Cells[2, 1].Text = "年齢";
fpSpread1.Sheets[0].Cells[2, 1].BackColor = System.Drawing.Color.LightGray;
fpSpread1.Sheets[0].Cells[3, 1].Text = "32";
fpSpread1.Sheets[0].Cells[4, 1].Text = "23";
fpSpread1.Sheets[0].Cells[5, 1].Text = "23";
fpSpread1.Sheets[0].Cells[6, 1].Text = "39";
fpSpread1.Sheets[0].Cells[7, 1].Text = "18";
fpSpread1.Sheets[0].Cells[8, 1].Text = "23";
fpSpread1.Sheets[0].Cells[9, 1].Text = "39";
fpSpread1.Sheets[0].Cells[10, 1].Text = "32";
fpSpread1.Sheets[0].Cells[11, 1].Text = "19";
fpSpread1.Sheets[0].Cells[12, 1].Text = "32";
fpSpread1.Sheets[0].Cells[13, 1].Text = "32";
fpSpread1.Sheets[0].Cells[14, 1].Text = "39";
fpSpread1.Sheets[0].Columns[1].Width = 50;
// UNIQUE数式を設定します。
fpSpread1.Sheets[0].Cells[2, 2].Text = "一意のリスト";
fpSpread1.Sheets[0].Cells[2, 2].BackColor = System.Drawing.Color.LightBlue;
fpSpread1.Sheets[0].Cells[3, 2].Formula = "UNIQUE(A4:A15)";
fpSpread1.Sheets[0].Columns[2].Width = 90;
// Sort数式を設定します。
fpSpread1.Sheets[0].Cells[2, 3].Text = "ソートされた名前";
fpSpread1.Sheets[0].Cells[2, 3].BackColor = System.Drawing.Color.LightBlue;
fpSpread1.Sheets[0].Cells[3, 3].Formula = "SORT(A4:A15)";
fpSpread1.Sheets[0].Columns[3].Width = 90;
// 一意リストにSort 数式を設定します。
fpSpread1.Sheets[0].Cells[2, 4].Text = "ソートされた一意の値";
fpSpread1.Sheets[0].Cells[2, 4].BackColor = System.Drawing.Color.LightBlue;
fpSpread1.Sheets[0].Cells[3, 4].Formula = "SORT(C4#)";
fpSpread1.Sheets[0].Columns[4].Width = 90;
// Sort とUnique数式、両方を設定します。
fpSpread1.Sheets[0].Cells[2, 5].Text = "ソートされた一意の値";
fpSpread1.Sheets[0].Cells[2, 5].BackColor = System.Drawing.Color.LightBlue;
fpSpread1.Sheets[0].Cells[3, 5].Formula = "SORT(UNIQUE(A4:A15))";
fpSpread1.Sheets[0].Columns[5].Width = 90;
// SortBy 数式を設定してB4:B15の範囲に基づいてA4:B15の範囲を並べ替えます。
fpSpread1.Sheets[0].Cells[2, 6].Text = "SortBy";
fpSpread1.Sheets[0].Cells[2, 6].BackColor = System.Drawing.Color.LightBlue;
fpSpread1.Sheets[0].Cells[3, 6].Formula = "SORTBY(A4:B15, B4:B15)";
fpSpread1.Sheets[0].Columns[6].Width = 90;
// Sheet[1]のセルにデータを設定します。
fpSpread1.Sheets[1].Columns[0, 9].Width = 70;
fpSpread1.Sheets[1].Cells[3, 0].Text = "地域";
fpSpread1.Sheets[1].Cells[3, 0].BackColor = System.Drawing.Color.LightGray;
fpSpread1.Sheets[1].Cells[4, 0].Text = "東";
fpSpread1.Sheets[1].Cells[5, 0].Text = "北";
fpSpread1.Sheets[1].Cells[6, 0].Text = "西";
fpSpread1.Sheets[1].Cells[7, 0].Text = "東";
fpSpread1.Sheets[1].Cells[8, 0].Text = "東";
fpSpread1.Sheets[1].Cells[9, 0].Text = "東";
fpSpread1.Sheets[1].Cells[10, 0].Text = "西";
fpSpread1.Sheets[1].Cells[11, 0].Text = "南";
fpSpread1.Sheets[1].Cells[12, 0].Text = "北";
fpSpread1.Sheets[1].Cells[13, 0].Text = "北";
fpSpread1.Sheets[1].Cells[14, 0].Text = "東";
fpSpread1.Sheets[1].Cells[15, 0].Text = "南";
fpSpread1.Sheets[1].Cells[16, 0].Text = "西";
fpSpread1.Sheets[1].Cells[3, 1].Text = "販売員";
fpSpread1.Sheets[1].Cells[3, 1].BackColor = System.Drawing.Color.LightGray;
fpSpread1.Sheets[1].Cells[4, 1].Text = "Tom";
fpSpread1.Sheets[1].Cells[5, 1].Text = "Fred";
fpSpread1.Sheets[1].Cells[6, 1].Text = "Amy";
fpSpread1.Sheets[1].Cells[7, 1].Text = "Sal";
fpSpread1.Sheets[1].Cells[8, 1].Text = "Hector";
fpSpread1.Sheets[1].Cells[9, 1].Text = "Xi";
fpSpread1.Sheets[1].Cells[10, 1].Text = "Amy";
fpSpread1.Sheets[1].Cells[11, 1].Text = "Sal";
fpSpread1.Sheets[1].Cells[12, 1].Text = "Fred";
fpSpread1.Sheets[1].Cells[13, 1].Text = "Tom";
fpSpread1.Sheets[1].Cells[14, 1].Text = "Hector";
fpSpread1.Sheets[1].Cells[15, 1].Text = "Sravan";
fpSpread1.Sheets[1].Cells[16, 1].Text = "Xi";
fpSpread1.Sheets[1].Cells[3, 2].Text = "製品";
fpSpread1.Sheets[1].Cells[3, 2].BackColor = System.Drawing.Color.LightGray;
fpSpread1.Sheets[1].Cells[4, 2].Text = "りんご";
fpSpread1.Sheets[1].Cells[5, 2].Text = "ぶどう";
fpSpread1.Sheets[1].Cells[6, 2].Text = "梨";
fpSpread1.Sheets[1].Cells[7, 2].Text = "バナナ";
fpSpread1.Sheets[1].Cells[8, 2].Text = "りんご";
fpSpread1.Sheets[1].Cells[9, 2].Text = "バナナ";
fpSpread1.Sheets[1].Cells[10, 2].Text = "バナナ";
fpSpread1.Sheets[1].Cells[11, 2].Text = "梨";
fpSpread1.Sheets[1].Cells[12, 2].Text = "りんご";
fpSpread1.Sheets[1].Cells[13, 2].Text = "ぶどう";
fpSpread1.Sheets[1].Cells[14, 2].Text = "ぶどう";
fpSpread1.Sheets[1].Cells[15, 2].Text = "りんご";
fpSpread1.Sheets[1].Cells[16, 2].Text = "ぶどう";
fpSpread1.Sheets[1].Cells[3, 3].Text = "単位";
fpSpread1.Sheets[1].Cells[3, 3].BackColor = System.Drawing.Color.LightGray;
fpSpread1.Sheets[1].Cells[4, 3].Text = "6380";
fpSpread1.Sheets[1].Cells[5, 3].Text = "2344";
fpSpread1.Sheets[1].Cells[6, 3].Text = "3434";
fpSpread1.Sheets[1].Cells[7, 3].Text = "5461";
fpSpread1.Sheets[1].Cells[8, 3].Text = "2341";
fpSpread1.Sheets[1].Cells[9, 3].Text = "3234";
fpSpread1.Sheets[1].Cells[10, 3].Text = "6532";
fpSpread1.Sheets[1].Cells[11, 3].Text = "7323";
fpSpread1.Sheets[1].Cells[12, 3].Text = "2334";
fpSpread1.Sheets[1].Cells[13, 3].Text = "8734";
fpSpread1.Sheets[1].Cells[14, 3].Text = "1932";
fpSpread1.Sheets[1].Cells[15, 3].Text = "7682";
fpSpread1.Sheets[1].Cells[16, 3].Text = "3293";
fpSpread1.Sheets[1].Cells[0, 4].Text = "製品:";
fpSpread1.Sheets[1].Cells[0, 4].BackColor = System.Drawing.Color.LightGray;
fpSpread1.Sheets[1].Cells[0, 5].Text = "りんご";
fpSpread1.Sheets[1].Cells[1, 4].Text = "地域:";
fpSpread1.Sheets[1].Cells[1, 4].BackColor = System.Drawing.Color.LightGray;
fpSpread1.Sheets[1].Cells[1, 5].Text = "東";
fpSpread1.Sheets[1].Cells[2, 5].Text = "Filtering performed on one Criteria";
fpSpread1.Sheets[1].Cells[2, 5].BackColor = System.Drawing.Color.LightBlue;
fpSpread1.Sheets[1].AddSpanCell(2, 5, 1, 4);
fpSpread1.Sheets[1].Cells[3, 5].Text = "地域";
fpSpread1.Sheets[1].Cells[3, 5].BackColor = System.Drawing.Color.LightGray;
fpSpread1.Sheets[1].Cells[3, 6].Text = "販売員";
fpSpread1.Sheets[1].Cells[3, 6].BackColor = System.Drawing.Color.LightGray;
fpSpread1.Sheets[1].Cells[3, 7].Text = "製品";
fpSpread1.Sheets[1].Cells[3, 7].BackColor = System.Drawing.Color.LightGray;
fpSpread1.Sheets[1].Cells[3, 8].Text = "単位";
fpSpread1.Sheets[1].Cells[3, 8].BackColor = System.Drawing.Color.LightGray;
// Filter数式(1つの条件)を設定して、C5:C17の範囲内の値がセルF1の値と一致する基準に基づいてA5:D17範囲の項目をフィルタします。
fpSpread1.Sheets[1].Cells[4, 5].Formula = "FILTER(A5:D17, C5:C17=F1)";
fpSpread1.Sheets[1].Cells[12, 5].Text = "地域";
fpSpread1.Sheets[1].Cells[12, 5].BackColor = System.Drawing.Color.LightGray;
fpSpread1.Sheets[1].Cells[12, 6].Text = "販売員";
fpSpread1.Sheets[1].Cells[12, 6].BackColor = System.Drawing.Color.LightGray;
fpSpread1.Sheets[1].Cells[12, 7].Text = "製品";
fpSpread1.Sheets[1].Cells[12, 7].BackColor = System.Drawing.Color.LightGray;
fpSpread1.Sheets[1].Cells[12, 8].Text = "単位";
fpSpread1.Sheets[1].Cells[12, 8].BackColor = System.Drawing.Color.LightGray;
fpSpread1.Sheets[1].Cells[11, 5].Text = "複数の条件に基づいて実行されているフィルタリング";
fpSpread1.Sheets[1].Cells[11, 5].BackColor = System.Drawing.Color.LightBlue;
fpSpread1.Sheets[1].AddSpanCell(11, 5, 1, 4);
// Filter数式(2つの条件)を設定して、C5:C17の範囲内の値がセルF1の値と一致する、     // かつ、A5:A17の範囲内の値がセルF2の値と一致する基準に基づいてA5:D17範囲の項目をフィルタします。
fpSpread1.Sheets[1].Cells[13, 5].Formula = "FILTER(A5:D17, (C5:C17=F1)*(A5:A17=F2))";
fpSpread1.Sheets[2].Columns[0, 7].Width = 130;
// Sequence 数式を設定します。
FormulafpSpread1.Sheets[2].Columns[0, 7].Width = 130;
fpSpread1.Sheets[2].Cells[0, 0].Text = "SEQUENCE(4,5) Function";
fpSpread1.Sheets[2].AddSpanCell(0, 0, 1, 2);
fpSpread1.Sheets[2].Cells[0, 0].BackColor = System.Drawing.Color.SkyBlue;
fpSpread1.Sheets[2].Cells[1, 0].Formula = "SEQUENCE(4,5)";
// RandArray数式を設定します。
fpSpread1.Sheets[2].Cells[6, 0].Text = "RANDARRAY(5,3) Function";
fpSpread1.Sheets[2].AddSpanCell(6, 0, 1, 2);
fpSpread1.Sheets[2].Cells[6, 0].BackColor = System.Drawing.Color.SkyBlue;
fpSpread1.Sheets[2].Cells[7, 0].Formula = "RANDARRAY(5,3)";
// Single数式を設定します。
fpSpread1.Sheets[2].Cells[13, 0].Text = "SINGLE(A15:E15) Function";
fpSpread1.Sheets[2].AddSpanCell(13, 0, 1, 2);
fpSpread1.Sheets[2].Cells[13, 0].BackColor = System.Drawing.Color.SkyBlue;
fpSpread1.Sheets[2].Cells[14, 0].Value = "A";
fpSpread1.Sheets[2].Cells[14, 1].Value = "B";
fpSpread1.Sheets[2].Cells[14, 2].Value = "C";
fpSpread1.Sheets[2].Cells[14, 3].Value = "D";
fpSpread1.Sheets[2].Cells[14, 4].Value = "E";
fpSpread1.Sheets[2].Cells[15, 2].Formula = "SINGLE(A15:E15)";

VB
コードのコピー
' 動的配列を有効にするには、CalcFeatures列挙をDynamicArrayに設定する必要があります。
FpSpread1.AsWorkbook().WorkbookSet.CalculationEngine.CalcFeatures = FpSpread1.AsWorkbook().WorkbookSet.CalculationEngine.CalcFeatures Or CalcFeatures.DynamicArray
FpSpread1.Sheets(0).FrozenRowCount = 1
FpSpread1.Sheets(0).Cells(0, 0).Text = "Dynamic Array Functions"
FpSpread1.Sheets(0).Cells(0, 0).BackColor = System.Drawing.Color.LightGray
FpSpread1.Sheets(0).AddSpanCell(0, 0, 1, 3)
' Sheet[0]のセルにデータを設定します。
FpSpread1.Sheets(0).Cells(2, 0).Text = "名前"
FpSpread1.Sheets(0).Cells(2, 0).BackColor = System.Drawing.Color.LightGray
FpSpread1.Sheets(0).Cells(3, 0).Text = "Larry"
FpSpread1.Sheets(0).Cells(4, 0).Text = "Safeway"
FpSpread1.Sheets(0).Cells(5, 0).Text = "Safeway"
FpSpread1.Sheets(0).Cells(6, 0).Text = "Raley"
FpSpread1.Sheets(0).Cells(7, 0).Text = "Vallarta"
FpSpread1.Sheets(0).Cells(8, 0).Text = "Safeway"
FpSpread1.Sheets(0).Cells(9, 0).Text = "Raley"
FpSpread1.Sheets(0).Cells(10, 0).Text = "Larry"
FpSpread1.Sheets(0).Cells(11, 0).Text = "Gilbert"
FpSpread1.Sheets(0).Cells(12, 0).Text = "Larry"
FpSpread1.Sheets(0).Cells(13, 0).Text = "Larry"
FpSpread1.Sheets(0).Cells(14, 0).Text = "Raley"
FpSpread1.Sheets(0).Columns(0).Width = 120
FpSpread1.Sheets(0).Cells(2, 1).Text = "年齢"
FpSpread1.Sheets(0).Cells(2, 1).BackColor = System.Drawing.Color.LightGray
FpSpread1.Sheets(0).Cells(3, 1).Text = "32"
FpSpread1.Sheets(0).Cells(4, 1).Text = "23"
FpSpread1.Sheets(0).Cells(5, 1).Text = "23"
FpSpread1.Sheets(0).Cells(6, 1).Text = "39"
FpSpread1.Sheets(0).Cells(7, 1).Text = "18"
FpSpread1.Sheets(0).Cells(8, 1).Text = "23"
FpSpread1.Sheets(0).Cells(9, 1).Text = "39"
FpSpread1.Sheets(0).Cells(10, 1).Text = "32"
FpSpread1.Sheets(0).Cells(11, 1).Text = "19"
FpSpread1.Sheets(0).Cells(12, 1).Text = "32"
FpSpread1.Sheets(0).Cells(13, 1).Text = "32"
FpSpread1.Sheets(0).Cells(14, 1).Text = "39"
FpSpread1.Sheets(0).Columns(1).Width = 50
' UNIQUE数式を設定します。
FpSpread1.Sheets(0).Cells(2, 2).Text = "一意のリスト"
FpSpread1.Sheets(0).Cells(2, 2).BackColor = System.Drawing.Color.LightBlue
FpSpread1.Sheets(0).Cells(3, 2).Formula = "UNIQUE(A4:A15)"
FpSpread1.Sheets(0).Columns(2).Width = 90
' Sort数式を設定します。
FpSpread1.Sheets(0).Cells(2, 3).Text = "ソートされた名前"
FpSpread1.Sheets(0).Cells(2, 3).BackColor = System.Drawing.Color.LightBlue
FpSpread1.Sheets(0).Cells(3, 3).Formula = "SORT(A4:A15)"
FpSpread1.Sheets(0).Columns(3).Width = 90
' 一意リストにSort 数式を設定します。
FpSpread1.Sheets(0).Cells(2, 4).Text = "ソートされた一意の値"
FpSpread1.Sheets(0).Cells(2, 4).BackColor = System.Drawing.Color.LightBlue
FpSpread1.Sheets(0).Cells(3, 4).Formula = "SORT(C4#)"
FpSpread1.Sheets(0).Columns(4).Width = 90
' Sort とUnique数式、両方を設定します。
FpSpread1.Sheets(0).Cells(2, 5).Text = "ソートされた一意の値"
FpSpread1.Sheets(0).Cells(2, 5).BackColor = System.Drawing.Color.LightBlue
FpSpread1.Sheets(0).Cells(3, 5).Formula = "SORT(UNIQUE(A4:A15))"
FpSpread1.Sheets(0).Columns(5).Width = 90
' SortBy 数式を設定してB4:B15の範囲に基づいてA4:B15の範囲を並べ替えます。
FpSpread1.Sheets(0).Cells(2, 6).Text = "SortBy"
FpSpread1.Sheets(0).Cells(2, 6).BackColor = System.Drawing.Color.LightBlue
FpSpread1.Sheets(0).Cells(3, 6).Formula = "SORTBY(A4:B15, B4:B15)"
FpSpread1.Sheets(0).Columns(6).Width = 90
FpSpread1.Sheets(1).Columns(0, 9).Width = 70
FpSpread1.Sheets(1).Cells(3, 0).Text = "地域"
FpSpread1.Sheets(1).Cells(3, 0).BackColor = System.Drawing.Color.LightGray
FpSpread1.Sheets(1).Cells(4, 0).Text = "東"
FpSpread1.Sheets(1).Cells(5, 0).Text = "北"
FpSpread1.Sheets(1).Cells(6, 0).Text = "西"
FpSpread1.Sheets(1).Cells(7, 0).Text = "東"
FpSpread1.Sheets(1).Cells(8, 0).Text = "東"
FpSpread1.Sheets(1).Cells(9, 0).Text = "東"
FpSpread1.Sheets(1).Cells(10, 0).Text = "西"
FpSpread1.Sheets(1).Cells(11, 0).Text = "南"
FpSpread1.Sheets(1).Cells(12, 0).Text = "北"
FpSpread1.Sheets(1).Cells(13, 0).Text = "北"
FpSpread1.Sheets(1).Cells(14, 0).Text = "東"
FpSpread1.Sheets(1).Cells(15, 0).Text = "南"
FpSpread1.Sheets(1).Cells(16, 0).Text = "西"
FpSpread1.Sheets(1).Cells(3, 1).Text = "販売員"
FpSpread1.Sheets(1).Cells(3, 1).BackColor = System.Drawing.Color.LightGray
FpSpread1.Sheets(1).Cells(4, 1).Text = "Tom"
FpSpread1.Sheets(1).Cells(5, 1).Text = "Fred"
FpSpread1.Sheets(1).Cells(6, 1).Text = "Amy"
FpSpread1.Sheets(1).Cells(7, 1).Text = "Sal"
FpSpread1.Sheets(1).Cells(8, 1).Text = "Hector"
FpSpread1.Sheets(1).Cells(9, 1).Text = "Xi"
FpSpread1.Sheets(1).Cells(10, 1).Text = "Amy"
FpSpread1.Sheets(1).Cells(11, 1).Text = "Sal"
FpSpread1.Sheets(1).Cells(12, 1).Text = "Fred"
FpSpread1.Sheets(1).Cells(13, 1).Text = "Tom"
FpSpread1.Sheets(1).Cells(14, 1).Text = "Hector"
FpSpread1.Sheets(1).Cells(15, 1).Text = "Sravan"
FpSpread1.Sheets(1).Cells(16, 1).Text = "Xi"
FpSpread1.Sheets(1).Cells(3, 2).Text = "製品"
FpSpread1.Sheets(1).Cells(3, 2).BackColor = System.Drawing.Color.LightGray
FpSpread1.Sheets(1).Cells(4, 2).Text = "りんご"
FpSpread1.Sheets(1).Cells(5, 2).Text = "ぶどう"
FpSpread1.Sheets(1).Cells(6, 2).Text = "梨"
FpSpread1.Sheets(1).Cells(7, 2).Text = "バナナ"
FpSpread1.Sheets(1).Cells(8, 2).Text = "りんご"
FpSpread1.Sheets(1).Cells(9, 2).Text = "バナナ"
FpSpread1.Sheets(1).Cells(10, 2).Text = "バナナ"
FpSpread1.Sheets(1).Cells(11, 2).Text = "梨"
FpSpread1.Sheets(1).Cells(12, 2).Text = "りんご"
FpSpread1.Sheets(1).Cells(13, 2).Text = "ぶどう"
FpSpread1.Sheets(1).Cells(14, 2).Text = "ぶどう"
FpSpread1.Sheets(1).Cells(15, 2).Text = "りんご"
FpSpread1.Sheets(1).Cells(16, 2).Text = "ぶどう"
FpSpread1.Sheets(1).Cells(3, 3).Text = "単位"
FpSpread1.Sheets(1).Cells(3, 3).BackColor = System.Drawing.Color.LightGray
FpSpread1.Sheets(1).Cells(4, 3).Text = "6380"
FpSpread1.Sheets(1).Cells(5, 3).Text = "2344"
FpSpread1.Sheets(1).Cells(6, 3).Text = "3434"
FpSpread1.Sheets(1).Cells(7, 3).Text = "5461"
FpSpread1.Sheets(1).Cells(8, 3).Text = "2341"
FpSpread1.Sheets(1).Cells(9, 3).Text = "3234"
FpSpread1.Sheets(1).Cells(10, 3).Text = "6532"
FpSpread1.Sheets(1).Cells(11, 3).Text = "7323"
FpSpread1.Sheets(1).Cells(12, 3).Text = "2334"
FpSpread1.Sheets(1).Cells(13, 3).Text = "8734"
FpSpread1.Sheets(1).Cells(14, 3).Text = "1932"
FpSpread1.Sheets(1).Cells(15, 3).Text = "7682"
FpSpread1.Sheets(1).Cells(16, 3).Text = "3293"
FpSpread1.Sheets(1).Cells(0, 4).Text = "製品:"
FpSpread1.Sheets(1).Cells(0, 4).BackColor = System.Drawing.Color.LightGray
FpSpread1.Sheets(1).Cells(0, 5).Text = "りんご"
FpSpread1.Sheets(1).Cells(1, 4).Text = "地域:"
FpSpread1.Sheets(1).Cells(1, 4).BackColor = System.Drawing.Color.LightGray
FpSpread1.Sheets(1).Cells(1, 5).Text = "東"
FpSpread1.Sheets(1).Cells(2, 5).Text = "Filtering performed on one Criteria"
FpSpread1.Sheets(1).Cells(2, 5).BackColor = System.Drawing.Color.LightBlue
FpSpread1.Sheets(1).AddSpanCell(2, 5, 1, 4)
FpSpread1.Sheets(1).Cells(3, 5).Text = "地域"
FpSpread1.Sheets(1).Cells(3, 5).BackColor = System.Drawing.Color.LightGray
FpSpread1.Sheets(1).Cells(3, 6).Text = "販売員"
FpSpread1.Sheets(1).Cells(3, 6).BackColor = System.Drawing.Color.LightGray
FpSpread1.Sheets(1).Cells(3, 7).Text = "製品"
FpSpread1.Sheets(1).Cells(3, 7).BackColor = System.Drawing.Color.LightGray
FpSpread1.Sheets(1).Cells(3, 8).Text = "単位"
FpSpread1.Sheets(1).Cells(3, 8).BackColor = System.Drawing.Color.LightGray

' Filter数式(1つの条件)を設定して、C5:C17の範囲内の値がセルF1の値と一致する基準に基づいてA5:D17範囲の項目をフィルタします。

FpSpread1.Sheets(1).Cells(4, 5).Formula = "FILTER(A5:D17, C5:C17=F1)"
FpSpread1.Sheets(1).Cells(12, 5).Text = "地域"
FpSpread1.Sheets(1).Cells(12, 5).BackColor = System.Drawing.Color.LightGray
FpSpread1.Sheets(1).Cells(12, 6).Text = "販売員"
FpSpread1.Sheets(1).Cells(12, 6).BackColor = System.Drawing.Color.LightGray
FpSpread1.Sheets(1).Cells(12, 7).Text = "製品"
FpSpread1.Sheets(1).Cells(12, 7).BackColor = System.Drawing.Color.LightGray
FpSpread1.Sheets(1).Cells(12, 8).Text = "単位"
FpSpread1.Sheets(1).Cells(12, 8).BackColor = System.Drawing.Color.LightGray
FpSpread1.Sheets(1).Cells(11, 5).Text = "複数の条件に基づいて実行されているフィルタリング"
FpSpread1.Sheets(1).Cells(11, 5).BackColor = System.Drawing.Color.LightBlue
FpSpread1.Sheets(1).AddSpanCell(11, 5, 1, 4)

' Filter数式(2つの条件)を設定して、C5:C17の範囲内の値がセルF1の値と一致する、かつ、A5:A17の範囲内の値がセルF2の値と一致する基準に基づいてA5:D17範囲の項目をフィルタします。

FpSpread1.Sheets(1).Cells(13, 5).Formula = "FILTER(A5:D17, (C5:C17=F1)*(A5:A17=F2))"
FpSpread1.Sheets(2).Columns(0, 7).Width = 130

' Sequence 数式を設定します。
FpSpread1.Sheets(2).Columns(0, 7).Width = 130
FpSpread1.Sheets(2).Cells(0, 0).Text = "SEQUENCE(4,5) Function"
FpSpread1.Sheets(2).AddSpanCell(0, 0, 1, 2)
FpSpread1.Sheets(2).Cells(0, 0).BackColor = System.Drawing.Color.SkyBlue
FpSpread1.Sheets(2).Cells(1, 0).Formula = "SEQUENCE(4,5)"

' RandArray数式を設定します。
FpSpread1.Sheets(2).Cells(6, 0).Text = "RANDARRAY(5,3) Function"
FpSpread1.Sheets(2).AddSpanCell(6, 0, 1, 2)
FpSpread1.Sheets(2).Cells(6, 0).BackColor = System.Drawing.Color.SkyBlue
FpSpread1.Sheets(2).Cells(7, 0).Formula = "RANDARRAY(5,3)"

' Single数式を設定します。
FpSpread1.Sheets(2).Cells(13, 0).Text = "SINGLE(A15:E15) Function"
FpSpread1.Sheets(2).AddSpanCell(13, 0, 1, 2)
FpSpread1.Sheets(2).Cells(13, 0).BackColor = System.Drawing.Color.SkyBlue
FpSpread1.Sheets(2).Cells(14, 0).Value = "A"
FpSpread1.Sheets(2).Cells(14, 1).Value = "B"
FpSpread1.Sheets(2).Cells(14, 2).Value = "C"
FpSpread1.Sheets(2).Cells(14, 3).Value = "D"
FpSpread1.Sheets(2).Cells(14, 4).Value = "E"
FpSpread1.Sheets(2).Cells(15, 2).Formula = "SINGLE(A15:E15)"

 

 


© MESCIUS inc. All rights reserved.