【发布时间】:2018-12-28 17:47:10
【问题描述】:
我在 excel vba 中使用以下代码
returnval = Shell("explorer.exe " & folderPath, vbNormalFocus)
打开文件夹,这工作正常,但它启动了一个新的 Windows 资源管理器进程。现在在任务管理器中可以看到 2 个 Windows 资源管理器进程。如果我继续将此函数与不同的folderPath 一起使用,它每次都会创建一个新的资源管理器进程实例。
如何使用现有的 explorer.exe 实例从 excel vba 打开文件夹?
【问题讨论】:
-
当我运行代码时,它不会创建 explorer.exe 的另一个实例
-
我不知道为什么它不会发生在你身上。但是我在几台win10机器上试过,在任务管理器中清晰的看到windows explorer的几个进程。但是如果我从 excel vba 外部打开许多文件夹,它们会在 explorer.exe 的同一进程中打开。
-
另外,如果你在 cmd 中键入“explorer.exe c:\path”,它会创建一个新的 explorer.exe 进程。但在 cmd 中,如果键入“start c:\path”不会创建新进程。不幸的是,如果我尝试在 vba 代码中用“start”替换“explorer.exe”,它不起作用