假设我在 WinForms 应用程序中进行了以下设置:
Dim ExcelApp As Microsoft.Office.Interop.Excel.Application
Dim ExcelWorkbook As Microsoft.Office.Interop.Excel.Workbook
Dim wksDataVals As Microsoft.Office.Interop.Excel.Worksheet
ExcelApp.Visible = False
基本上,我有一个不可见的 Excel 实例在后台运行,其中打开了一个工作簿,ExcelWorkbook
名为wksDataVals
. 并且用户正在通过用户表单操作此工作表(和其他工作表)并查看基于这些操作的一些输出。
现在,在我的表单上,我有一个按钮Show Excel Sheet
,一旦用户单击它,我想在一个新的独立工作簿中向他们显示 wksDataVals 的副本,同时将原始文件隐藏在后台以进行进一步的数据操作。我相信我需要通过创建一个新的 Excel 实例来做到这一点,因为我想隐藏这个实例。
有没有比这样做更好的方法:
- 保存工作表
- 创建 Excel 的新(可见)实例
- 在该实例中重新打开工作表
(这可能会导致工作表出现问题,因为我希望它在另一个 Excel 实例中保持打开状态,所以现在只能是只读的) - 我知道我可以通过将工作表重新保存为新名称来克服这个问题,但这一切似乎有点矫枉过正。
关于如何以最简单的方式完成此任务的任何想法?- 也许有一种方法可以在内部保存工作簿/工作表并将其提供给新的 Excel 实例,而不是让 Excel 尝试打开保存的工作表?
谢谢!