启动 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 资源管理器并突出显示文件的主要内容,如果未能解决你的问题,请参考以下文章