我使用Delphi10.2和Native Excel3库来创建电子表格。
我有以下代码:
var fWorkbook: IXLSWorkbook;fSheet1: IXLSWorksheet;begin fWorkbook:=TXLSWorkbook.Create;fSheet1:=fWorkBook.Sheets.Add;
fSheet1.Range['A1','A1'].ColumnWidth:=20;
fSheet1.Range['B1','B1'].ColumnWidth:=20;
fSheet1.Range['C1','C1'].ColumnWidth:=32;
fSheet1.Range['D1','D1'].ColumnWidth:=32;
fSheet1.Range['E1','E1'].ColumnWidth:=14;
fSheet1.Range['F1','F1'].ColumnWidth:=14;
fSheet1.Range['G1','G1'].ColumnWidth:=14;
fSheet1.Range['H1','H1'].ColumnWidth:=14;
fSheet1.Range['I1','I1'].ColumnWidth:=14;
fSheet1.Cells[1,1].Value:='Entry Type';
fSheet1.Cells[1,2].Value:='Intacct Acct #';
fSheet1.Cells[1,3].Value:='Intacct Acct # Description';
fSheet1.Cells[1,4].Value:='Store Name';
fSheet1.Cells[1,5].Value:='Department #';
fSheet1.Cells[1,6].Value:='Location ID';
fSheet1.Cells[1,7].Value:='Project ID';
fSheet1.Cells[1,8].Value:='Grant ID';
fSheet1.Cells[1,9].Value:='Net Amount';
intRow:=fWorkBook.SaveAs(Outfile);‘在这个之后还有额外的代码。end;
这段代码每次都能在我的开发系统上运行。我还在其他项目中使用过nExcel,没有出现任何问题。
但是,在客户端系统中,fWorkbook.SaveAs会生成“无效指针”错误或访问冲突。因为我不能复制它,所以调试很困难。
我已经尝试将SaveAs移动到不同的位置(在初始创建之后,在设置列宽之后,以及现在的位置)。
有人看过这个和/或有什么解释吗?
谢谢!马尔科姆
发布于 2021-10-07 12:48:31
已通过将工作簿另存为xlsx解决此问题。
https://stackoverflow.com/questions/69453929
复制相似问题