Excel vba ftp成功但服务器上没有文件?

时间:2013-05-27 20:36:02

标签: vba excel-vba ftp excel-2007 excel

我希望你能在这里帮我一些代码。我创建了一个模块,用于创建ftp命令文件,然后创建批处理文件来执行它。

我从另一个StackOverflow帖子中得到了这个过程: FTP a text file to a server using VBA in Excel

有些时候test.txt出现在服务器上,大部分时间都不出现。但是,ftp提示始终报告成功传输。

Screenshot of ftp.exe successful transferred.

Private Sub SendFileToServer()
Dim sCmdFile As String
Dim sBatFile As String
Dim vPath As String
Dim iFileNum As Integer

vPath = ThisWorkbook.Path
sCmdFile = vPath & "\" & "ftp" & "\" & "ftpCommand.txt"
iFileNum = FreeFile

  Open sCmdFile For Output As iFileNum
    Print #iFileNum, "open 555.555.555.55"
    Print #iFileNum, "user username"
    Print #iFileNum, "password"
    Print #iFileNum, "hash"
    Print #iFileNum, "ascii"
    Print #iFileNum, "lcd " & vPath
    Print #iFileNum, "cd dsi_Timesheets"
    Print #iFileNum, "put " & vPath & "\" & "test.txt"
    Print #1, "close"
    Print #1, "quit"
  Close #iFileNum

    Shell "ftp -n -i -g -s:" & vPath & "\ftp" & "\ftpCommand.txt " & vFTPServ,    vbNormalNoFocus
    SetAttr vPath & "\ftp" & "\ftpCommand.txt", vbNormal
    Kill vPath & "\ftp" & "\ftpCommand.txt"
End Sub

由于

1 个答案:

答案 0 :(得分:0)

找出问题:我正在使用Filezilla查看ftp服务器文件。 test.txt没有显示在ftp服务器上,因为我正在查看缓存版本。通过每次代码运行时刷新Filezilla中的ftp目录,text.txt就在那里。