请问如何在不弹出提示框的情况下保存对Excel的修改?
具体功能是这样的:
在服务器端先拷贝一份已有的Excel文件到指定目录,然后打开该文件,往其中的若干个Sheet中依次写入数据,然后保存。然后再将此文件下载到客户端。
现在的问题是:
如果不加“xApp.DisplayAlerts = false;”会在服务器端弹出另存对话框,点击保存后才可以正常下载,里面的数据也正常。
如果加上“xApp.DisplayAlerts = false;”服务器端不弹出对话框了,可以直接下载,但里面没有数据,也就是下载到的是写入数据之前的文件。
根据相关介绍分析的原因为:
不弹出对话框的方式下Excel实际上相当于直接默认选择了对话框“不保存”项,因此下载到的文件中没有数据。
我不理解的是我往一个已经存在的excel中写入数据再保存,为什么还要弹出“另存为”对话框?有没有什么办法既不弹出对话框又能保存数据呢?非常感谢
主要代码如下(C#):
object missing = Missing.Value;
Excel.Application xApp = new Microsoft.Office.Interop.Excel.Application();
xApp.Visible = false;
Excel.Workbook xBook = xApp.Workbooks.Open(dstPath, missing, false, missing,
missing, missing,missing, missing, missing, missing, missing, missing,
missing, missing, missing);
Excel.Worksheet xSheet1 = (Excel.Worksheet)xBook.Sheets["Sheet1"];
Excel.Worksheet xSheet2 = (Excel.Worksheet)xBook.Sheets["Sheet2"];
//数据写入略
xApp.DisplayAlerts = false;
xBook.Save();
xBook.Close();
xApp.Quit();
xSheet1 = null;
xSheet2 = null;
xBook = null;
xApp = null;
------解决方案--------------------看你的情况,是用NET写的吧,怎么发到ASP来了?发到对应的版本去