当创建新的空工作簿时,Excel将它们命名为“Workbook1”,“Workbook2”,“Workbook3”等。 我想创建一个空的隐藏工作簿,而不使用其中一个默认名称。 假设用户已经打开了“Workbook1”,那么我的代码将创建一个隐藏工作簿,该工作簿将由Excel命名为“Workbook2”。现在,如果用户创建另一个新的工作簿,Excel将调用该工作簿“Workbook3”。我希望它被命名为“Workbook2”。当然,我可以打开一个现有的空白工作簿,而不是创建一个工作簿,但这使得部署我的插件变得更加困难。Excel VBA/VSTO:在不增加“空工作簿名称计数器”的情况下创建新工作簿
1
A
回答
2
无法使用增量计数器来抑制或解决新工作簿的自动命名问题。该计数器在系统范围内工作:它甚至可以在您启动Excel应用程序的新实例时启用。
如果您不想在项目中分配空工作簿,则可以使用Open Office XML文件格式创建一个空工作簿。最简单的方法可能是将Open XML SDK添加到您的项目中(免费下载,免费许可证),并使用它来即时创建新的工作簿。只需在Open XMl SDK生产力工具中打开所需的基本工作簿,即可获得相应的代码。这会生成创建要打开的Office Open XML文件所需的代码。你应该可以复制/粘贴它...
相关问题
- 1. Excel加载项 - 获取“本工作簿”的工作簿名称
- 2. 工作簿。添加不添加新工作簿
- 3. Excel VBA或函数从工作簿中提取工作簿名称和数据
- 4. 如何将数据追加到现有工作簿的工作表并且不创建新的工作簿
- 5. 在没有页眉的情况下将工作表创建为工作簿ace.oledb
- 6. 在asp.net中创建excel工作簿
- 7. 从现有(未知名称)工作簿创建表单副本到一个新的(未知名称)工作簿
- 8. 使用VBA时,如何在不关闭所有工作簿的情况下关闭Excel工作簿?
- 9. Excel - 关闭工作簿的计时器
- 10. 在不离开当前工作簿的情况下将工作表复制到打开的工作簿?
- 11. 将工作表添加到另一个工作簿创建的工作簿
- 12. 在不指定工作表的情况下指定工作簿中的范围
- 13. 使用Marshal.GetActiveObject在空白的Excel工作簿中打开Excel工作簿
- 14. 在不打开的情况下使用其他工作簿
- 15. 创建新的工作簿并通过
- 16. 查找Excel工作簿的工作表名称和行号
- 17. 基于工作簿名称到不同地址的电子邮件工作簿
- 18. 在xlsxwriter中添加新工作簿到工作簿
- 19. C#打开工作簿返回加载项不工作簿
- 20. 从工作簿运行工作簿打开事件用新名称保存
- 21. 找到在Excel工作簿
- 22. 工作表(“新建”)选择无意中创建新工作簿
- 23. 如何在不打开工作簿的情况下运行存储在工作簿中的VBA宏?
- 24. 获取工作簿连接名称
- 25. 在新创建的工作簿中复制行的Excel 2003宏
- 26. 使用数据创建,命名并填充新工作簿
- 27. Excel VBA在新创建的工作簿中执行代码
- 28. 保护的Excel工作簿
- 29. GetActiveObject从Excel的工作簿
- 30. 如何在不提示的情况下使用com4j API保存excel工作簿