VBScript从桌面运行文件(任何用户)

VBScript从桌面运行文件(任何用户),vbscript,path,Vbscript,Path,我创建了一个VBScript,可以在不打开文件的情况下从excel运行宏 Set objExcel = CreateObject("Excel.Application") objExcel.Application.Run "'C:\Users\MyUser\Desktop\RM.xlsm'!Module4.Email" objExcel.DisplayAlerts = False objExcel.Application.Quit Set objExcel = Nothing

我创建了一个VBScript,可以在不打开文件的情况下从excel运行宏

Set objExcel = CreateObject("Excel.Application")  
objExcel.Application.Run "'C:\Users\MyUser\Desktop\RM.xlsm'!Module4.Email"  
objExcel.DisplayAlerts = False  
objExcel.Application.Quit  
Set objExcel = Nothing
我想在不同的计算机上使用此VBScript&XLSM文件,因此如何在不每次编辑路径的情况下更改此脚本以使其正常工作?

(可能是从当前文件夹运行的代码或从任何用户桌面运行的代码)

如果文件始终位于每个用户的桌面上,则可以使用环境变量确定位置

Set wshShell = CreateObject( "WScript.Shell" )
userName = wshShell.ExpandEnvironmentStrings( "%UserName%" )

path = "'C:\Users\" + userName + "\Desktop\RM.xlsm'!Module4.Email"
Set objExcel = CreateObject("Excel.Application")  
objExcel.Application.Run path
objExcel.DisplayAlerts = False  
objExcel.Application.Quit  
Set objExcel = Nothing
(未测试代码)

如果文件不在每个用户的桌面上,则您需要将其存储在网络上的一个公共位置,并让每个用户从该位置访问它,例如在

\\YourFileSever\SharedFiles\RM.xlsm

实际上,后者更可取,因为这意味着工作簿只在一个地方,当发布新版本时,您只需更新一份副本

谢谢!它起作用了!(是的,我可以在每个桌面上复制excel文件)太棒了。如果你高兴,你介意投票回答吗?我已经投票了,但是:“谢谢你的反馈!记录了声誉低于15的人的投票,但是不要改变公开显示的帖子分数。”好的。NP快乐之夜