我正在尝试将格式化的数据表设置为excel工作表。
简单地说:
ws.InsertDataTable(myDatatable,
new InsertDataTableOptions()
{
ColumnHeaders = false,
StartRow = 5
});
但myDatatable单元格主要包含数值。 当我通过Gembox Spreadsheet将我的数据表插入excel时,许多单元格都会出现“存储为文本的数字”警告。
我不想禁用此警告,但我想像在excel中那样应用“转换为数字”。
答案 0 :(得分:1)
我认为myDatatable
中的那些数值属于string
类型,我是对的吗?
在这种情况下,请尝试以下方法:
var options = new InsertDataTableOptions()
{
ColumnHeaders = false,
StartRow = 5
};
options.DataTableCellToExcelCellConverting += (s, e) =>
{
string textNumber = e.DataTableValue as string;
double number;
if (textNumber != null && double.TryParse(textNumber, out number))
e.ExcelCellValue = number;
};
ws.InsertDataTable(myDatatable, options);