【问题标题】:How to programmatically save an OPEN Excel Document如何以编程方式保存打开的 Excel 文档
【发布时间】:2011-06-02 00:36:20
【问题描述】:

我有 UI 测试。 UI 测试完成后,他们在 Excel 文档中打开结果文件(测试环境中安装了 Excel 2007) - 但问题是 Excel 文档没有保存在计算机上的任何位置。它们仅在 AutoRecover 功能将临时文件保存为 .xar 文件时才存在,因此这对我们毫无用处。

我们使用 C# .NET 程序来启动 UI 测试(并做很多其他事情),所以我想看看是否可以以编程方式保存这个 OPENED excel 文档。

这可能吗?

谢谢

【问题讨论】:

    标签: c# .net excel excel-2007


    【解决方案1】:

    这可能会帮助你How to: Save Workbooks

    例子

    此示例创建一个新工作簿,提示用户输入文件名,然后保存工作簿。

    Set NewBook = Workbooks.Add
    Do
        fName = Application.GetSaveAsFilename
    Loop Until fName <> False
    NewBook.SaveAs Filename:=fName
    

    【讨论】:

    • 是的,只要他有正在运行的 excel 应用程序的句柄(我想他会这样做),这将起作用。
    • 您好,感谢您的回复。你能用 C# .NET 重写它吗?在您链接到的网页中,他们使用了“this”关键字,但这应该如何工作?我希望代码将 excel 文档保存为 C# .NET 自动化程序的一部分...我尝试将一些代码放在一起并使用 Microsoft.Office.Interop.Excel DLL 参考,但我无法弄清楚如何使用它来保存使用 MDSN 文档的文档。你能提供更多信息吗?谢谢
    • @user606602:这是一个很简单的例子,阅读起来,保存一个excel文件c-sharpcorner.com/UploadFile/jayendra/5443
    • 您好 Thomas,谢谢,但文章中的代码并没有真正的帮助,而且我认为这并不简单。比如看一下保存的代码:'object objOpt = Missing.Value; objBook.SaveAs(newFilePath, objOpt, objOpt, objOpt, objOpt, objOpt, XlSaveAsAccessMode.xlNoChange, objOpt, objOpt, objOpt, objOpt, objOpt);'例如,这个 Missing 类是什么?这对我来说没有意义。你自己试过吗?
    • @user606602:它在System.Reflection 命名空间中,它只是告诉对象丢失或不可用。
    最近更新 更多