SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

現役エンジニア直伝! 「現場」で使えるコンポーネント活用術(SPREAD)

特定の用途に絞りこんだ計算ソフトの作成

SPREAD for .NET 2.5J Windows Forms Editionによる表計算機能の実装

  • このエントリーをはてなブックマークに追加

FpSpreadコンポーネントの設定

 このFpSpreadコンポーネントは、プロパティとデザイナでほとんどの初期設定を行うことができます。コンポーネントをフォームに配置した時点では、500行×500列のシートが1枚組み込まれた状態になっています。これを、FpSpreadコンポーネント全体のプロパティやシートのプロパティを操作して、用途や業務固有の形態に修正していきます。

フォームに配置した状態のFpSpreadコンポーネント
フォームに配置した状態のFpSpreadコンポーネント

 FpSpreadコンポーネントでは、シートは[Sheet]オブジェクト(コレクション)になっていますので、シート単位で外観の設定を行うことができます。

スキンの変更

 シートの配色を変更するには、タスクトレイから[スキンの編集]を選び、[シートスキンエディタ]を起動します。[標準]ページではあらかじめ設定されている配色を、[カスタム]ページでは独自にカスタマイズした配色を選ぶことができます。ここでは、[Professional1]を選んでみました。

スキンの設定
スキンの設定

行列数の変更

 シートの行列数を変えるには、シート単体のプロパティを変更します。

 これには、まずFpSpreadコンポーネントの[Sheets]プロパティをクリックし、[SheetView]コレクションエディタを起動します。そして、[ClumnCount]と[RowCount]プロパティの値を操作します。ここでは、11行×5列のシートに変更します。

[SheetView]コレクションエディタで行列数を修正
[SheetView]コレクションエディタで行列数を修正

列見出しを変更する

 デフォルトでは、シートの行列の見出しはExcelのようになっています。特定の業務にしか使用しないという前提で、見出しも変更してみます。

 FpSpreadコンポーネントのタスクトレイをクリックし、[デザイナ]を選ぶと、[SPREAD for .NETデザイナ]というウィンドウが起動します。ここから、変更したい見出しをクリックし、プロパティウィンドウにある「Label」の値を好きな文字に変えます。これは、行列の見出しのどれも同じ操作で変更できます。

 ここでは、列見出しを人名に、11行目の見出しを[合計]に変更しています。そして、デザイナのツールバーにある[適用]ボタンを押すと、変更がコンポーネントに反映されます。

デザイナで行列の見出しを変える
デザイナで行列の見出しを変える

SUM関数の埋め込み

 今度は、[合計]欄に、行1から10までの合計値を算出する関数を組み込みます。これもデザイナで行います。

 まず、デザイナのプロパティウィンドウのオブジェクトリストから[シート]を選び、[Calculation]の[ReferenceStyle]が[A1]になっていることを確認します。この形式になっていれば、行列見出しの名前が変わっていても、数式でのセルの参照をExcelのように[A1,A2,A3...]というセル番地で参照できるようになります。

[ReferenceStyle]が[A1]になっていることを確認
[ReferenceStyle]が[A1]になっていることを確認

 次に、[山田][合計]のセルをクリックし、デザイナの[数式の編集]をクリックします。

[山田][合計]欄のセルをクリックし、セルの値を編集する欄をクリックしてカーソルを点滅させ、[数式の編集]ボタンをクリックします。
[山田][合計]欄のセルをクリックし、セルの値を編集する欄をクリックしてカーソルを点滅させ、[数式の編集]ボタンをクリックします。

 [数式エディタ]が起動します。[数学]をクリックし[SUM]をダブルクリックすると、[数式]欄に「SUM()」と入力されるので、[適用]ボタンを押します。

[SUM]をダブルクリックし[適用]ボタンを押す
[SUM]をダブルクリックし[適用]ボタンを押す

 セルの値を編集する欄に「=SUM()」と入力されるので、()の中に「A1:A10」と入力します。Excelのようにセル範囲を""で囲む必要はありません。これで、[山田][合計]のセルには、「=SUM(A1:A10)」と関数式が入力されます。

 そして、[数式または値の設定]ボタン(チェックマーク)を押すと、この式が確定します。

()の中に[A1:A10]と入力し[数式または値の設定]ボタンを押す
()の中に[A1:A10]と入力し[数式または値の設定]ボタンを押す

 また、デザイナのプロパティウィンドウにある[Formura]プロパティにも、この数式が入ります。

[Formura]プロパティにもこの数式が入る
[Formura]プロパティにもこの数式が入る

 後は、このセルをコピーし、残りの人の[合計]セルにペーストしていきます。ペーストはセル範囲でまとめて行うことはできないので、1つ1つ順番にペーストしていきます。最後に、ツールバーの[適用]ボタンを押して、設定をコンポーネントに反映させ、デザイナを閉じます。

[適用]ボタンを押す
[適用]ボタンを押す

動作チェック

 では、ここまでの設定がちゃんと動作するかどうか、チェックしてみましょう。プログラムを実行させ、セルに数値を入力します。合計値が変わっていけばOKです。

動作チェックで計算をさせてみる
動作チェックで計算をさせてみる

次のページ
ファイル保存の処理

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
現役エンジニア直伝! 「現場」で使えるコンポーネント活用術(SPREAD)連載記事一覧

もっと読む

この記事の著者

瀬戸 遥(セト ハルカ)

8ビットコンピュータの時代からBASICを使い、C言語を独習で学びWindows 3.1のフリーソフトを作成、NiftyServeのフォーラムなどで配布。Excel VBAとVisual Basic関連の解説書を中心に現在まで40冊以上の書籍を出版。近著に、「ExcelユーザーのためのAccess再...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/1034 2016/09/02 13:42

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング