V4 V5

組込のセル型は 6 種類です。

6 種類の組込セル型と、それぞれの振る舞い

ws.SetCellType(0, 0, CheckboxCellType.Instance);
ws.SetCellType(1, 0, new DropdownCellType(["未着手", "作業中", "完了"], editable: false));
ws.SetCellType(2, 0, new ProgressCellType(max: 100, color: 0xFF4CAF50));
ws.SetCellType(3, 0, new ButtonCellType("実行"));
ws.SetCellType(4, 0, HyperlinkCellType.Instance);
ws.SetCellType(5, 0, new SparklineCellType(color: 0xFF2196F3));

一覧

生成使うセル値
チェックボックスCheckboxCellType.Instancebool
ドロップダウンnew DropdownCellType(options, editable)string(選択値)
進捗バーnew ProgressCellType(max, color, bidirectional, showText)double
ボタンnew ButtonCellType(text)文字列(text 省略時のラベル)
ハイパーリンクHyperlinkCellType.Instancestring(URL)
スパークラインnew SparklineCellType(color)string(カンマ区切りの数値)

CheckboxCellTypeHyperlinkCellType は状態を持たないため、Instance を共有します。

チェックボックス

値は bool です。クリックで反転します。

ws.SetCellType(0, 0, CheckboxCellType.Instance);
ws.SetBoolean(0, 0, true);

数式から COUNTIF(A:A, TRUE) のように数えられます。

ドロップダウン

new DropdownCellType(["未着手", "作業中", "完了"], editable: false)

editable: true にすると、選択肢以外の文字列も直接入力できます(Excel の 「入力値の種類:リスト」で「その他の値を許可」に相当)。

クリックするとコントロールがポップアップを表示します。ヘッドレスでは記述子が OpenDropdown を返すだけで、実際のポップアップは発生しません。

進捗バー

new ProgressCellType(max: 100, color: 0xFF4CAF50, bidirectional: false, showText: true)
引数内容
max100% に対応する値(既定 100)
colorバーの色(ARGB)
bidirectional負の値を左向きに描く
showText数値をバーの上に表示する

ボタン

new ButtonCellType("実行")

text を省略するとセル値が表示ラベルになります。クリックはコントロールの CellButtonClicked イベントで受けます。

control.CellButtonClicked += (s, e) => { /* e に位置が入る */ };

ハイパーリンク

ws.SetCellType(0, 0, HyperlinkCellType.Instance);
ws.SetText(0, 0, "https://reogrid.net");

クリックすると既定のブラウザで開きます。開く処理はコントロール層が行うため、 ヘッドレスでは何も起こりません。

スパークライン

ws.SetCellType(0, 5, new SparklineCellType());
ws.SetText(0, 5, "3,7,4,9,12,8,15");     // カンマ区切りの数値列

セル内に折れ線を描きます。V5 で追加された型で、V4 にはありません。

V4 にあって V5 に無い型

DatePicker / RadioButton / NumberInput / 画像系は未実装です。 必要な場合は カスタムセル型 として実装できます。

保存

セル型は reogrid-json に範囲スコープ{r, c, rs, cs, config})で往復します。 XLSX には対応する概念がないため、書き出すと通常のセルになります。

次に読む

ページの内容は役に立ちましたか?