application.visible=true 多个工作簿

application.visible=true multiple workbooks

我正在为我工​​作的一位女士制作一个程序,允许她保存唯一的 ID 和 PDF 的名称。当她输入唯一 ID# 时,它将打开她需要为客户打印的 PDF。

我目前的问题是我想对她或将使用该程序的任何其他人隐藏工作簿。到目前为止,我所看到的实现此目的的最佳代码是使用 Application.Visible = True。但是,我打开了多个工作簿,我想其他一些人也会使用它。

有没有办法指定我希望影响哪个工作簿?每次我尝试以任何方式添加一个时,它都会给我一个调试错误。感谢您的帮助。

Application.Visible

隐藏/显示完整的(当前)Excel 应用程序对象。要仅隐藏一个工作簿,您可能想尝试

Workbooks("TheBookIWantToHide").Windows(1).Visible = False

但是我发现隐藏 "in use" 的书籍或应用程序有点危险。当 VBA 卡住时,您可能会在后台看到大量孤立的 Excel 进程。

我推荐一种策略,其中一个 "printing book" 包含 VBA 逻辑,另一个 "ID book" 包含最新的唯一 ID。输入 ID 并验证后,在新的应用程序对象(隐藏)中打开 VBA 中的 ID 簿,保存 ID,存储并关闭 ID 簿