数式で異なるシートのセルを参照している場合、参照先の行を削除してCtrl+Zで処理を取り消すと、参照元の数式が不正になる

文書番号 : 84764     文書種別 : 制限事項     登録日 : 2019/12/20     最終更新日 : 2019/12/20
文書を印刷する
対象製品
SpreadJS(Ver.10.x.x -)
詳細
他シートのセルを参照している数式で、参照先シートの参照されている行を削除し、Ctrl+Zで削除処理を取り消すと、参照元シートで設定されている数式が不正になります。

【再現手順】
1. 下記のサンプルコードを作成します

★サンプルコード(JavaScript)
var spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"));
spread.setSheetCount(2);

var activeSheet = spread.getActiveSheet();
var referencedSheet = spread.sheets[1];

referencedSheet.name("数式");
referencedSheet.getCell(0, 0).value(100);
referencedSheet.getCell(1, 0).value(200);
referencedSheet.getCell(2, 0).value(300);
referencedSheet.getCell(3, 0).value(400);

activeSheet.setFormula(0, 0, "数式!A1")
activeSheet.setFormula(1, 0, "数式!A2")
activeSheet.setFormula(2, 0, "数式!A3")
activeSheet.setFormula(3, 0, "数式!A4")
activeSheet.setFormula(4, 0, "数式!A3+数式!A4")
activeSheet.setFormula(5, 0, "SUM(数式!A3+数式!A4)")

2.数式シートでSheet1シートから参照されている行(例:3行目)を1行削除する
3.数式シートでCtrl + Z で手順2.の行削除操作を元に戻す
4.Sheet1シートで数式が設定されているセル(例:A3セルからA6セル)を確認する