列・行単位で数式を設定できない
対象製品
El Tabelle for .NET 2.0J
発生環境
すべてのアセンブリ
状況
修正済み
詳細
Sheet.SetCellInfo メソッドや Sheet.CellFormula プロパティを使用して数式を設定するとき、セル範囲に列("C:C")や行("2:5")が指定されていると、数式が入力されません。
次のコードは、A列の値からB列の値を引いた値をC列に表示しますが、数式が入力されないため、動作しません。
[Visual Basic]
WorkBook1.IsR1C1 = True
Sheet1.CellRange = New GrapeCity.Win.ElTabelle.Range("C:C", False)
Sheet1.CellFormula = "=RC[-2]-RC[-1]"
[C#]
workBook1.IsR1C1 = true;
sheet1.CellRange = new GrapeCity.Win.ElTabelle.Range("C:C", false);
sheet1.CellFormula = "=RC[-2]-RC[-1]";
次のコードは、A列の値からB列の値を引いた値をC列に表示しますが、数式が入力されないため、動作しません。
[Visual Basic]
WorkBook1.IsR1C1 = True
Sheet1.CellRange = New GrapeCity.Win.ElTabelle.Range("C:C", False)
Sheet1.CellFormula = "=RC[-2]-RC[-1]"
[C#]
workBook1.IsR1C1 = true;
sheet1.CellRange = new GrapeCity.Win.ElTabelle.Range("C:C", false);
sheet1.CellFormula = "=RC[-2]-RC[-1]";
回避方法
この現象はファイル バージョン v2.0.2006.0126 以降のアセンブリで修正されています。
修正版は こちら からダウンロードできます。
また、次の操作を行うことで現象を回避できます。
ループを使用してセル単位で数式を入力するか、またはセル範囲を使用することで回避できます。
[Visual Basic]
WorkBook1.IsR1C1 = True
Sheet1.CellRange = New GrapeCity.Win.ElTabelle.Range( _
"C1:C" & Sheet1.MaxRows.ToString(), False)
Sheet1.CellFormula = "=RC[-2]-RC[-1]"
[C#]
workBook1.IsR1C1 = true;
sheet1.CellRange = new GrapeCity.Win.ElTabelle.Range(
"C1:C" + sheet1.MaxRows.ToString(), false);
sheet1.CellFormula = "=RC[-2]-RC[-1]"
修正版は こちら からダウンロードできます。
また、次の操作を行うことで現象を回避できます。
ループを使用してセル単位で数式を入力するか、またはセル範囲を使用することで回避できます。
[Visual Basic]
WorkBook1.IsR1C1 = True
Sheet1.CellRange = New GrapeCity.Win.ElTabelle.Range( _
"C1:C" & Sheet1.MaxRows.ToString(), False)
Sheet1.CellFormula = "=RC[-2]-RC[-1]"
[C#]
workBook1.IsR1C1 = true;
sheet1.CellRange = new GrapeCity.Win.ElTabelle.Range(
"C1:C" + sheet1.MaxRows.ToString(), false);
sheet1.CellFormula = "=RC[-2]-RC[-1]"
キーワード
ELTB04833
この文書は、以前は次のバグレポートIDで公開されていました : 4973