計算式プラグインで行複写出来ないかと相談を受けたので、やってみました。
テーブル行を追加時に、1行前の項目値を複写します。
行複写の操作例
環境
アプリ設定
テーブル内に、文字列、ドロップダウン、チェックボックスと複写制御用の文字列項目を配置します。
フォーム設定
複写制御用の文字列項目
初期値を"0" にします。計算を最後にするため、テーブルの右端に配置します。
タイプは、文字列・ドロップダウン・ラジオボタンでもOKです。
計算式プラグインの設定
テーブル内の複写対象項目と複写制御用項目に、計算式を設定します。
- 「循環参照を許可」をチェックします。
- 行複写対象の項目は、計算式を設定し「編集」をチェックします。
文字列項目T1
2行目以降で、複写制御=="0" の場合、1行前の値を設定
それ以外は、自項目を設定
- 文字列項目T1
IF(AND(ROWNO(複写制御)>0,複写制御=="0"),
SUBTABLE(文字列T1,ROWNO(複写制御)-1),文字列T1)
ドロップダウンT1
ドロップダウン・ラジオボタンは、文字列項目と同様です。
- ドロップダウンT1
IF(AND(ROWNO(複写制御)>0,複写制御=="0"),
SUBTABLE(ドロップダウンT1,ROWNO(複写制御)-1),ドロップダウンT1)
チェックボックスT1
複数の値を持つチェックボックスや複数選択項目は、ARRAY関数で設定します。
- チェックボックスT1
IF(AND(ROWNO(複写制御)>0,複写制御=="0"),
SUBTABLE(ARRAY(チェックボックスT1),ROWNO(複写制御)-1),
ARRAY(チェックボックスT1))
複写制御
計算処理済み"1"にします。非表示をチェックします。
- 複写制御
"1"