启动 Windows 资源管理器并突出显示文件

Posted

技术标签:

【中文标题】启动 Windows 资源管理器并突出显示文件【英文标题】:Launching Windows Explorer and highlighting a file 【发布时间】:2015-07-29 01:30:13 【问题描述】:

有没有办法使用 VBA 打开 Windows 资源管理器窗口,导航到 Excel 工作表的活动单元格中提到的特定文件,然后选择它。

例如,列A 具有要搜索的文件名,如果我选择列A1 并运行宏,它应该打开路径/目录并找到A1 中提到的文件并只选择文件.它不应该打开它。

【问题讨论】:

【参考方案1】:

您可以使用/select 参数执行explorer.exe

Shell "explorer.exe /select,""" & Range("A1") & """", vbNormalFocus

假设A1 有路径c:\path\to\file.txt,这看起来像:

explorer.exe /select,"c:\path\to\file.txt"

【讨论】:

谢谢!但是,如果我们希望文件名是活动单元格,即被选中的单元格而不是 A1,那么我们需要做什么更改?? 只需使用ActiveCell 代替Range("A1") 我使用了以下语法:Shell "explorer.exe /select, V:\Jul\1st Jul\File.pdf" & ActiveCell & """", vbNormalFocus。当我选择 activeCell 时,这将打开用户文件夹。请帮助我哪里出错了。 你为什么使用文件路径和ActiveCell?我以为你的文件路径是 IN ActiveCell? 请注意 /select 后的昏迷。我花了一段时间才意识到我的错误,因为通常这样的开关之间有一个空格是可以的【参考方案2】:

这对我有用

下面将打开带有正确结果的资源管理器窗口,并在路径 SSDrive 中找到所有带有单词 experience 的文件。

调用 Shell("explorer.exe ""search-ms://query=Experience&crumb=folder:" & sSDrive & """")

@https://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/a8a0daef-a2e2-4559-a209-d2f263a52b05/searchms-output-results-to-file?forum=windowsdesktopsearchhelp

【讨论】:

以上是关于启动 Windows 资源管理器并突出显示文件的主要内容,如果未能解决你的问题,请参考以下文章

打开一个文件夹并使用 WPF 突出显示特定文件

解决方案资源管理器 VS 2015 中的文件重命名

在 Windows 资源管理器中选择文件并不总是有效

以编程方式替换选择器图像

Windows 资源保护无法启动修复服务

打开资源管理器窗口并选择指定文件