1

我正在处理一个文档 ( ppt, pptx, xls, xlsx, doc, docx and pdf) 拆分器,总的来说,我让它工作了。现在我面临最后一个问题,事情是在我的计算机上一切正常(windows 7 64b + office 2007),但我xlsx的服务器(windows server 2008 64b + office 2007)有一个问题。

问题是,与此同时,我正在拆分具有图表的 xlsx(它与 xls 一起使用),我可以从每张工作表中创建新文件,但来自图表的工作表。

Excel.Workbook newWork = workbooks.Add();
work.Sheets[counter].Copy(newWork.Sheets[1]);

foreach (Excel.Worksheet newSheet in newWork.Worksheets)
{
    if (newSheet.Index > 1)
    {
        newSheet.Delete();
    }
}
newWork.SaveAs(
    currentName, Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookDefault, 
    Type.Missing, Type.Missing, false, false,
    Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange,
    Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);

newWork.Close();
Marshal.ReleaseComObject(newWork);

newWork.SaveAs 正在抛出ComException: Document not saved。如果我手动完成这项工作(我的意思是,如果我打开 xlsx 文件然后将图表移动/复制到新工作簿),它会起作用。此外,如果我删除该属性excelApp.DisplayAlerts = false;,它会卡在“另存为”对话框中(如果我尝试通过选择目标文件夹手动完成该过程,则会一遍又一遍地弹出“另存为”弹出窗口)。

任何想法?

4

0 回答 0