从其他Excel文件执行宏时,所有Excel工作表均“未响应”

时间:2019-03-06 11:02:09

标签: excel vba worksheet-function

this question中所述,我正在从Excel运行Windbg,以便分析结果。
在我的Excel宏中,有以下几行代码:

Windbg_PID1 = Shell("windbg -z """ + Txt_File1.Text + """ -logo """ + Output_FileName1 + """ -c "".load pykd.pyd;!py heap_stat.py -stat""", vbMaximizedFocus)
Windbg_PID2 = Shell("windbg -z """ + Txt_File2.Text + """ -logo """ + Output_FileName2 + """ -c "".load pykd.pyd;!py heap_stat.py -stat""", vbMaximizedFocus)

经过相当多的Windbg处理之后,有以下命令关闭上述Windbg会话:

Shell "TASKKILL /PID " + CStr(Windbg_PID1) + " /PID " + CStr(Windbg_PID2)

一切正常,但有一个问题:似乎所有Excel文件(甚至与我的Windbg分析无关的文件)都归在同一Excel应用程序下,只要我Windbg启动宏正在运行,我所有其他Excel文件都变成了Not responding

有人知道如何:

  1. (最好)在Excel文件中启动一个宏(即使它包含Shell()工作表函数),而不会使我的Excel文件“不响应”。
  2. (在不可能出现第1点的情况下)在单独的Excel应用程序下打开其他Excel文件。 (当我打开3个Excel文件并运行tasklist | findstr /I excel时,我应该得到3个结果)

(供您参考,我已经尝试使用vbNormalNoFocus作为窗口样式,但这并没有保存问题)

0 个答案:

没有答案