gpt4 book ai didi

excel - 如何避免 Excel 在自动化应用程序退出时显示“保存”对话框

转载 作者:行者123 更新时间:2023-12-03 15:18:26 28 4
gpt4 key购买 nike

我有一个用 Delphi 编写的 Excel 自动化应用程序,它访问给定的 Excel 工作簿并应用一些内部逻辑提取工作表的不同数据。

它在 Excel 2003 和 2007 上完美运行多年。

最近,一些用户拥有 Excel 2010。对于这些用户,当我的应用程序退出时,Excel 会显示一个对话框,要求用户保存未修改的工作表。该消息提到了要以新的 2010 格式保存的公式版本。抱歉,我不知道确切的单词,因为它不是英文办公包。

我的应用程序如何防止 Excel 2010 显示这个烦人且无用的框?

大多数用户都拥有 Excel 2007,因此我的应用程序需要处理的大多数文件(无论运行我的应用程序的用户的实际 Excel 版本如何)都采用该格式,并且将来也会采用这种格式,因此需要迁移所有文件都不是一个选项。

最佳答案

这是通过自动化打印 Excel 工作表的例程。在遇到了时不时弹出 Excel 保存对话框的问题后,这个例程解决了所有问题:

procedure PrintExcelReport( Const filename : String;
sheet : Integer);
{- Sheet is counted from 1 and upwards !! }
Var
App : OleVariant;
begin
App:= CreateOleObject('Excel.Application');
Try
App.Visible:= 0;
App.WorkBooks.Open(ExpandUNCFileName(filename),1); // Open read only
Try
App.ActiveWorkBook.WorkSheets[sheet].Select;
App.ActiveWorkBook.ActiveSheet.PrintOut; // Prints active sheet
Finally
App.ActiveWorkBook.Saved:= 1;
App.DisplayAlerts:= 0;
App.ActiveWorkBook.Close(SaveChanges:= 0);
End;
Finally
App.Quit;
App:= UnAssigned;
End;
end;

对其进行调整以适合您的应用程序。

关于excel - 如何避免 Excel 在自动化应用程序退出时显示“保存”对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13037007/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com