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