如果LatestExcel.bat
包含在下,點擊它會你尋求的效果。
@echo off
if exist "C:\Program Files\Microsoft Office\Office12\EXCEL.EXE" GOTO L2007
if exist "C:\Program Files\Microsoft Office\Office11\EXCEL.EXE" GOTO L2003
echo "Excel not installed"
pause
GOTO End
:L2007
Call "C:\Program Files\Microsoft Office\Office12\EXCEL.EXE"
GOTO End
:L2003
Call "C:\Program Files\Microsoft Office\Office11\EXCEL.EXE"
:End
替代溶液
CALL
,這是我在第一溶液中使用的,將控制權交給另一個批處理文件或程序,但需要控制返回一旦批處理文件或程序已完成。這就是爲什麼CMD.EXE
保持活動狀態。我以爲我記得一個切換控制的批處理命令,但我找不到它;我一定在想另一種腳本語言。
順便說一句。如果你使用谷歌的「windows批處理文件命令」,你將得到一系列提供批處理文件命令教程或語法的站點。但是,我通常使用命令Help
Pause
或Help Copy
Pause
創建批處理文件。
對於此解決方案,我創建了兩個快捷方式,一個用於Excel 2003,一個用於Excel 2007,並將它們放在Temp中。我用下面的語句創建了批處理文件PickLatestExcel.bat
。我在普通文件夾和桌面上嘗試了它,並且在兩種情況下它都移動了正確的快捷方式文件並將其重命名爲Excel
。
我不知道您所在的環境,但這兩個解決方案可能會讓您瞭解您可以通過批處理文件實現的功能。
rem @echo off
if exist "C:\Program Files\Microsoft Office\Office12\EXCEL.EXE" GOTO L2007
if exist "C:\Program Files\Microsoft Office\Office11\EXCEL.EXE" GOTO L2003
echo "Excel not installed"
pause
GOTO End
:L2007
Copy "C:\Windows\Temp\Excel2007.lnk" Excel.lnk
GOTO End
:L2003
Copy "C:\Windows\Temp\Excel2003.lnk" Excel.lnk
:End
您只需根據安裝在用戶系統上的應用程序版本更改'Target'字段。你遇到了什麼問題? – dirkgently 2012-04-28 21:19:10
我有團隊成員使用多個版本的Excel,並且我爲每個版本運行不同的VBA代碼。告訴他們下載一個簡單的快捷方式比存儲一系列不同版本的快捷方式更容易,並要求他們選擇合適的快捷方式。 – Wes 2012-04-28 22:33:43