在UI中失去焦点时,保持Excel进程以高优先级运行

在UI中失去焦点时,保持Excel进程以高优先级运行,excel,vba,Excel,Vba,当窗口失去焦点时,我们很难让Excel工作表执行足够的操作。该表收集财务提要,并在提交到另一个提要之前进行一些(基于VBA的)处理。该提要需要每秒重新计算一次,并且必须在使用其他程序(包括Excel的其他实例)时运行。在Windows 10上运行Excel 2013 只要Excel工作表有焦点,一切都会完美工作。但是,如果切换到其他程序(包括Excel的其他实例),性能会下降到不可接受的水平,即使机器仍然有大量可用资源(CPU、内存)。Excel/Windows似乎将资源限制在没有焦点的窗口上

当窗口失去焦点时,我们很难让Excel工作表执行足够的操作。该表收集财务提要,并在提交到另一个提要之前进行一些(基于VBA的)处理。该提要需要每秒重新计算一次,并且必须在使用其他程序(包括Excel的其他实例)时运行。在Windows 10上运行Excel 2013

只要Excel工作表有焦点,一切都会完美工作。但是,如果切换到其他程序(包括Excel的其他实例),性能会下降到不可接受的水平,即使机器仍然有大量可用资源(CPU、内存)。Excel/Windows似乎将资源限制在没有焦点的窗口上

有没有办法告诉Excel使用必要的资源? 我们迄今为止所做的尝试:

1) 以高优先级启动Excel工作表-bat文件:

start "high priority excel" /max /high C:\Program Files (x86)\Microsoft Office\Office15\Excel.exe <name of Excel file>
启动“高优先级excel”/max/high C:\Program Files(x86)\Microsoft Office\Office15\excel.exe
在TaskManager中,我们看到Excel实例以高优先级运行,但在失去焦点时,性能仍然受到限制

2) 调整注册表设置Win32PrioritySeparation以控制后台/前台进程之间的优先级: HKLM\System\CurrentControlSet\Control\PriorityControl\Win32优先级分离

尝试将其设置为“8”似乎有一些效果,但还不够-Excel不在焦点中,仍然不允许使用资源来保持性能


任何帮助或输入都将不胜感激。

为什么不在专用计算机上运行此excel,或者您只能访问一台?如果有那么重要的话……这些答案有什么帮助吗?用户需要同时将此表与一组其他Excel表一起运行。有时,他们会使用提要与Excel工作表交互,并进行一些手动更新。因此,不幸的是,在单独的机器上运行此操作对于用户来说是不可接受的。