Delphi 导出到 Excel (.xlsx)
Delphi export to Excel (.xlsx)
导出到 xls 时没有错误导出到 xlsx 时单元格出现错误“此单元格中的数字格式为文本或前面有撇号”但没有撇号
为什么会发生奇怪的行为?
更新:
我使用 QExport4XLS、QExport4Xlsx、kbmMemTable - 数据源。
MemTable.FieldDefs.Add('Price', db.ftFloat, 0, False)
...
MemTable.FieldByName('Price').AsFloat := Value
...
QExport4X*.DataSet := MemTable;
...
QExport4X*.Execute;
我认为这是因为在这两种情况下(xls 和 xlsx)您都将值导出为字符串。 Excel 的最新版本通过向您显示左上角的绿色三角形向您表明它认为单元格的值可能是另一种类型。
您应该在导出时检查类型。
没有看到代码显然是胡乱猜测。
我使用的是 v4.0,所以根据他们在 v4.2 之后修复的错误修复跟踪器,这是组件问题。
导出到 xls 时没有错误导出到 xlsx 时单元格出现错误“此单元格中的数字格式为文本或前面有撇号”但没有撇号
为什么会发生奇怪的行为?
更新: 我使用 QExport4XLS、QExport4Xlsx、kbmMemTable - 数据源。
MemTable.FieldDefs.Add('Price', db.ftFloat, 0, False)
...
MemTable.FieldByName('Price').AsFloat := Value
...
QExport4X*.DataSet := MemTable;
...
QExport4X*.Execute;
我认为这是因为在这两种情况下(xls 和 xlsx)您都将值导出为字符串。 Excel 的最新版本通过向您显示左上角的绿色三角形向您表明它认为单元格的值可能是另一种类型。 您应该在导出时检查类型。
没有看到代码显然是胡乱猜测。
我使用的是 v4.0,所以根据他们在 v4.2 之后修复的错误修复跟踪器,这是组件问题。