用C#在Excel单元格中引入公式

Introduce formula in Excel Cell with C#

我已经在使用互操作将 Datable 转换为 Excel 文件,一切正常 但是当我尝试插入 excel 这样的公式:

=(0,5*E30)

我有一个错误,但是如果我尝试像这样插入另一个错误:

=(0*E30)

一切正常。我像插入字符串一样插入它。那么会发生什么?我不明白为什么只使用 a ,我得到那个错误。

Excepción de HRESULT: 0x800A03EC</Message><StackTrace>   en Intranet.InteropExcel.DataTableToExcel(DataTable DataTable, String ExcelFilePath) en C:\Desarrollo\VisualStudio2010\ImeApps\Buscador\Intranet\ExportToExcel.cs:línea 301
   en Intranet.Intranet.butExcel_Click(Object sender, EventArgs e) en C:\Desarrollo\VisualStudio2010\ImeApps\Buscador\Intranet\Intranet.cs:línea 3306
   en System.Windows.Forms.Control.OnClick(EventArgs e)
   en System.Windows.Forms.Button.OnClick(EventArgs e)

那么会发生什么? 提前致谢!

试试这个:

Excel.Range rng = ActiveSheet.Cells[j, i] as Excel.Range;
rng.Formula = formulaCantidad;

问题可能是格式提供程序。尝试使用这样的值 0.5 或按文化设置数字格式。

var cultureInfo = //get culture info local or named
rng.NumberFormat = cultureInfo.NumberFormat;