如何在Microsoft Windows上的单独进程中运行Office 2013/2016应用程序?

时间:2013-06-27 01:38:51

标签: excel vba vsto office-interop office-2013

我正在开发一个Excel插件。它适用于2013年之前的Excel版本。但是当它针对Excel 2013运行时,许多功能都被破坏。我发现根本原因是所有窗口仅在Excel 2013中的一个进程中运行。即使用户明确地启动了一个新窗口通过双击桌面上的快捷方式或单击开始菜单中的项目,不会创建任何新进程。 这导致进程之间的状态冲突。状态栏和功能区是共享的。例如,当我在一个窗口中更新状态栏信息时,其他窗口也会更新。当我在一个窗口中选中/取消选中功能区按钮时,其他窗口的按钮也会被选中/取消选中。 我认为一个可能的解决方案是改变一些配置,使其像以前一样工作。但我在谷歌上搜索没有发现任何相关内容。

有谁知道如何制作它还是有其他解决方案?

2 个答案:

答案 0 :(得分:10)

使用Excel 2013,您的默认设置是在现有Excel流程中创建一个新窗口。为了强制创建Excel进程的单独实例,您有以下选项:

选项1

在命令提示符下,运行EXCEL / X,您将打开Excel窗口作为新实例。 / X命令开关强制创建新实例。

选项2

  1. 右键单击Windows任务栏enter image description here
  2. 中的Excel图标
  3. 转到列出应用程序enter image description here
  4. 的位置
  5. 按住键盘上的ALT键,然后点击" Excel 2013/2016"
  6. 它应该给你这个提示,"你想开始一个新的Excel实例吗?" enter image description here
  7. 点击"是!"
  8. 选项3

    使用此技术直接打开现有文档:

    1. 按住Alt。
    2. 右键单击Excel文件。
    3. 点击“打开”。
    4. 继续按住Alt,直到"您是否要启动Excel的新实例"对话弹出。
    5. 单击是。
    6. 有关详细信息,请访问: http://sqlblog.com/blogs/marco_russo/archive/2012/07/24/running-excel-2013-in-a-separate-instance-excel-powerpivot.aspx

答案 1 :(得分:-1)

重。 " 右键单击Windows任务栏中的Excel选项卡,同时按住ALT键"
- 使用Excel 2016的 Windows 10 中没有此选项。 但是,Excel / X选项有效,并且在新进程中创建了第二个更改 - 撤消缓冲区,如上所述。