使用 VBA 和 WinSCP 同步本地和远程文件

Sync local and remote file using VBA and WinSCP

我正在尝试使用 WinSCP 将本地文件与服务器自动同步。我收到以下脚本错误:

这是我的 vba 代码:

Public Sub pullwinscp()
Shell "wscript C:\Users\Aaron\Desktop\SyncSftp.vbs", vbNormalFocus
End Sub

这是我要调用的脚本(另存为 .vbs):

open sftp://User:Password@webaddress.org -hostkey="aaaaa-aaa2 aaaaa256 7a:4a:aa:aa:aa:aa:aa:aa:a1:aa:aa:aa:aa:aa:aa:aa"
synchronize local C:\Users\Aaron\Documents\test /home/FTP/Acct Hourly Acctg

知道我为什么会收到此错误吗?

您的“.vbs”不是 VBScript 代码。那是 WinSCP script

从 VBA 到 运行 WinSCP 脚本,使用:

Call Shell("C:\path\winscp.com /ini=nul /script=c:\path\SyncSftp.txt")

(将 SyncSftp.vbs 重命名为 SyncSftp.txt 之后,因为它不是 VBScript)

另见