MESCIUS SPREAD for Windows Forms 15.0J
数式テキストボックスの設定

スプレッドシートで数式テキストボックスを使用するには、以下の手順を実行します。

  1. 数式テキストボックスの設定
  2. 数式テキストボックスの使用
  3. 交差式と複合参照式の使用

数式テキストボックスの設定

フローティング数式バーを設定して、数式を追加するために使用できます。数式バーは、開発者向けの数式エディタに似ており、テキストボックスのような外観です。数式バーは、演算関数の一覧を表示するだけでなく、数式のセル範囲を選択するための方法を視覚的に案内します。

実行時に数式バーを設定するには、FormulaTextBoxクラスを使用します。設計時にフォーム上に数式テキストボックスを描画して、これをSpreadに割り当てることもできます。ツールボックスから数式テキストボックスのアイコンを選択し、フォーム上にドラッグします。数式テキストボックスの動詞を選択し、Spreadに追加します。

ユーザーが、数式を入力することができる数式テキストボックス(FormulaTextBox)コントロールを使用できます。

これは、SPREADデザイナや[プロパティ]ウィンドウで、開発者に、設計時に提供される数式エディタに似た機能で、テキストボックスの外観をもちます。数式テキストボックスには、演算関数の一覧が表示されます。また、数式で使用するセル範囲を視覚的に選択できる機能を提供します。

数式テキストボックス

数式テキストボックスの設定

数式テキストボックス(FormulaTextBox)コントロールは、Visual Studioのツールボックスに、次の図のアイコンで表示されます。

 

ツールボックスから数式テキストボックスを選択して、フォームにドラッグします。そして、数式テキストボックスを選択し、SPREADに割り当てます。

  • ユーザーに、シートへの数式の入力を許可するには、FpSpreadクラスのAllowUserFormulasプロパティをTrueに設定します。
  • コードで数式テキストボックスを追加するには、FormulaTextBoxクラスを使用します。

数式テキストボックスの使用

数式テキストボックスを使用するには、等号(=)を入力してから、数式名の入力を開始します。入力した文字で始まる関数の一覧が表示されます。次に、左かっこを入力して、マウスのドラッグでセル範囲を選択するか、絶対参照または相対参照を使用してセル値を入力します。次の図では、A1〜B3のセル範囲を選択しています。

条件付き書式の例

サンプルコード

次のサンプルコードは、数式テキストボックスを作成しています。

C#
コードのコピー
FarPoint.Win.Spread.FormulaTextBox editor = new FarPoint.Win.Spread.FormulaTextBox();
editor.Location = new Point(0, 0);
editor.Size = new Size(80, 20);
this.Controls.Add(editor);
editor.Attach(fpSpread1);
// この行は、数式バーをコントロールから切り離します。
// editor.Detach();
Visual Basic
コードのコピー
Dim editor As New FarPoint.Win.Spread.FormulaTextBox
editor.Location = New Point(0, 0)
editor.Size = New Size(80, 20)
Controls.Add(editor)
editor.Attach(FpSpread1)
' この行は、数式バーをコントロールから切り離します。
' editor.Detach()

交差式と複合参照式の使用

スプレッドシートで数式テキストボックスを使用する場合、交差式と複合参照式を使用できます。

ワークシートで公差式を作成するには、使用する演算関数のパラメータとして、2つのセル範囲をスペースで区切って選択または指定する必要があります。

次の図は、数式テキストボックスに公差式を使用する例を示します。ここではSUM関数を使用し、2つのセル範囲「B1:B6」と「B3:C4」を、スペースで区切って指定しています。この数式を計算すると、2つのセル範囲の交差部分(図上で行と列が交差している強調表示された部分)に表示されているすべての値が合計されます。

複合参照式は、1つのワークシート内で、相対セル参照と絶対セル参照とを組み合わせた数式です(絶対列と相対行、あるいは絶対行と相対列)。絶対セル参照は固定参照とも呼ばれ、セル番号の前にドル記号($)を表示します。相対セル参照の場合は、ワークシート内の行および列間でドラッグやコピーによって数式の位置を変えると、参照先も変更されます。

数式の詳細については、「 数式 」のページ、および「関数リファレンス」を参照してください。

コードの使用

スプレッドシートの数式テキストボックスでは、交差式と複合参照式を使用できます。

サンプルコード

次のサンプルコードは、スプレッドシートで交差式と複合参照式を使用します。

C#
コードのコピー
// 公差式を使用します。 
fpSpread1.Sheets[0].Cells[0, 1].Value = 0;
fpSpread1.Sheets[0].Cells[1, 1].Value = 1;
fpSpread1.Sheets[0].Cells[2, 1].Value = 2;
fpSpread1.Sheets[0].Cells[3, 1].Value = 3;
fpSpread1.Sheets[0].Cells[4, 1].Value = 4;
fpSpread1.Sheets[0].Cells[5, 1].Value = 5;
fpSpread1.Sheets[0].Cells[2, 2].Value = 6;
fpSpread1.Sheets[0].Cells[3, 2].Value = 7;
fpSpread1.Sheets[0].Cells[2, 4].Formula = "SUM(B1:B6 B3:C4)";

// 複合参照式を使用します。
fpSpread1.Sheets[0].Cells[5, 5].Formula = "SUM($B1, $B$2, B$3, B4)";
Visual Basic
コードのコピー
'公差式を使用します。
fpSpread1.Sheets(0).Cells(0, 1).Value = 0
fpSpread1.Sheets(0).Cells(1, 1).Value = 1
fpSpread1.Sheets(0).Cells(2, 1).Value = 2
fpSpread1.Sheets(0).Cells(3, 1).Value = 3
fpSpread1.Sheets(0).Cells(4, 1).Value = 4
fpSpread1.Sheets(0).Cells(5, 1).Value = 5
fpSpread1.Sheets(0).Cells(2, 2).Value = 6
fpSpread1.Sheets(0).Cells(3, 2).Value = 7
fpSpread1.Sheets(0).Cells(2, 4).Formula = "SUM(B1:B6 B3:C4)
'複合参照式を使用します。
fpSpread1.Sheets(0).Cells(5, 5).Formula = "SUM($B1, $B$2, B$3, B4)"
                

構造化参照の使用

SPREAD for Winformsでは、テーブルセルへ構造化参照数式を挿入することができます。 構造化参照式は、キーワードとテーブルの列名を使用してテーブル内のセル範囲を参照します。

テーブル内の数式の構造化参照の格コンポーネントは次のとおりです。

  1. テーブル名 - ヘッダと合計行(存在する場合)を除いて、実際のテーブルデータを参照するために指定する名前です。
  2. 列指定子 - 列ヘッダから派生し、角かっこで囲まれています。 列指定子は、列ヘッダと合計(存在する場合)を除く列データを参照します。
  3. 項目指定子 - 合計行など、テーブルの特定の部分を参照するために使用できます。
  4. テーブル指定子 - テーブル名の後に角かっこで囲まれた構造化参照の外側の部分です。
  5. 構造化参照 - テーブル名で始まり、テーブル指定子で終わる文字列全体です。

次の図は、SPREADデザイナで、構造化参照を使用してテーブル数式を選択する方法を示しています。

 

Selecting table formula using structured references 

参照

 

 


© MESCIUS inc. All rights reserved.