bat 脚本用于启动 excel,无需硬编码路径,使用命令行选项

bat 脚本用于启动 excel,无需硬编码路径,使用命令行选项

我需要编写一个.bat 脚本,在特定文件上启动 Excel。

困难的部分是我不知道 Excel 的确切安装路径。

此外,我需要使用一个选项来启动它,以使其变为只读。

这里有一些背景信息可以帮助我们了解问题的背景:目前.bat 文件如下所示:

"C:\My\Path\To\excel.exe" /r "S:\The\Path\To\File.xlsx"

该文件位于共享驱动器上。用户在桌面上有该文件的快捷方式。

当用户单击快捷方式时,Excel 将从 File.xlsx 启动。

但是,当另一个使用不同 Excel 路径的用户执行相同操作时,脚本只会闪烁 cmd 窗口。

顺便说一句,我还想找到一种方法来消除运行时 cmd 窗口对屏幕的干扰。

这与这个问题相关: 允许多人使用单个只读 Excel 文件

我尝试在文件上创建一个快捷方式并设置目标:

start excel /r "S:\The\Path\To\File.xlsx"

但如果失败并显示以下消息: 在此处输入图片描述

答案1

我目前无法测试这一点,但我相信您可以避免使用批处理文件。只需创建一个具有以下目标的快捷方式

编辑:对批处理文件尝试以下操作:

START excel.exe /r "S:\The\Path\To\File.xlsx"
EXIT

此外,我相信你可以加入Excel 安装路径的注册表项值通过运行以下批处理命令:

 reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\excel.exe"

答案2

我无法让 START 在快捷方式中工作,因为它需要命令行。我使用了以下方法,效果很好:

C:\Windows\System32\cmd.exe /c START excel.exe /r “使用 UNC 路径,这样您就不必在此处映射驱动器\File.xlsx”

当您输入 cmd.exe 时,它​​会自动硬编码路径 C:\Windows\System32\cmd.exe
您可以使用 %systemroot%\Systems32\cmd.exe..... 尽可能避免硬编码。

相关内容