Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 使用Selenium/Shell/WScript/AutoIT在VBA的“文件选择器”对话框中自动附加/上载文件_Excel_Vba_Selenium_Shell_Autoit - Fatal编程技术网

Excel 使用Selenium/Shell/WScript/AutoIT在VBA的“文件选择器”对话框中自动附加/上载文件

Excel 使用Selenium/Shell/WScript/AutoIT在VBA的“文件选择器”对话框中自动附加/上载文件,excel,vba,selenium,shell,autoit,Excel,Vba,Selenium,Shell,Autoit,对VBA Shell命令知之甚少。基本上,代码应该将“文件路径”传递到文件选择器对话框窗口,并上载/附加文件。不断地出错。需要专家的帮助 VBA代码-Shell错误并请求对象 Sub AttachFile() ufile = "D:\Desktop\Movement Pass.txt" vbsFile = "D:\Downloads\Selenium Basic\Attachment.vbs" Shell "WScript.exe "

对VBA Shell命令知之甚少。基本上,代码应该将“文件路径”传递到文件选择器对话框窗口,并上载/附加文件。不断地出错。需要专家的帮助

VBA代码-Shell错误并请求对象

Sub AttachFile()
ufile = "D:\Desktop\Movement Pass.txt"
vbsFile = "D:\Downloads\Selenium Basic\Attachment.vbs"
Shell "WScript.exe " & vbsFile & " " & ufile 
End Sub

VB脚本-Attachment.vbs-参数处出错

Set WshShell = CreateObject("WScript.Shell")
Application.wait Now + TimeSerial(0, 0, 5)
Ret = WshShell.AppActivate("Open")
WshShell.Run "cmd.exe /c echo " & Wscript.Arguments(0) & "| clip", 0, True
WshShell.SendKeys "^{v}"
我用AutoIT尝试过同样的自动化,它对硬代码文件路径有效。我正在寻找一种动态获取文件路径的方法,以便可以从ExcelVBA运行循环

Shell命令不编译,并且AutoIT不允许VBA中的动态路径

是的,可以用Java和其他语言使文件路径动态

我正在寻找VBA和Shell命令中的解决方案,因为这样我就不需要安装任何其他软件。我有Excel和记事本,但上面的代码不起作用

另一方面,VBA中的AutoIT动态文件路径也可以是一个解决方案。我知道这不是运行脚本的正确方法,但这就是我所知道的

VBA.Shell“浏览器D:\Seleninum\VB\Get\u File\u Name.exe”,vbNormalFocus


需要帮助,这将节省大量时间。

作为命令行参数传递的路径如果可能包含空格,则需要引用:

Sub AttachFile()
    ufile = "D:\Desktop\Movement Pass.txt"
    vbsFile = "D:\Downloads\Selenium Basic\Attachment.vbs"
    Shell "WScript.exe """ & vbsFile & """ """ & ufile & """"
End Sub