在向一系列单元格中写入时,是否可以用C#将公式写入Excel
本文关键字:Excel 一系列 单元格 是否 | 更新日期: 2024-09-22 18:03:23
我有一个自制的实用程序,可以将数据从数据集传输到Excel电子表格。我想把一个公式(例如"=+RC[-2]-RC[-1]")放在其中一列中。然而,Excel将其视为字符串,而不是将其解释为公式。该实用程序在Excel中创建一个对象数组并将其传输到一个范围。这是问题所在吗?我过去曾将公式写入Excel,但仅限于写入单个单元格时。
for (int r = 0; r < nr; r++)
{
r = dt.Rows[r];
nOut++;
aRng = new object[nc];
for (int c = 0; c < nc; c++) else aRng[c] = dr[c];
oRng = oSheet.get_Range(CellAddress(nOut, 1), CellAddress(nOut, nc));
oRng.Value2 = aRng;
}
您必须使用.Formula属性才能强制excel将其视为公式。
((Range)worksheet.Cells[row, col]).Formula = myFormula
必须使用Range
对象的.Formula
或FormulaR1C1
属性。
string s = "=+RC[-2]-RC[-1]";
...
oRng.FormulaR1C1 = s;