Подключение к FTP-серверу через VBA, функция «Put» для локального файла * .XLSB

#excel #vba

#excel #vba

Вопрос:

Я попробовал несколько разных вещей, которые я нашел здесь, и у меня ничего не получилось, как это показано ниже:

 Option Explicit
Const FTP_ADDRESS = "ftp.yourdestination.com"
Const FTP_USERID = "anon"
Const FTP_PASSWORD = "anon"

Sub Macro1()
    If Not SendFtpFile_F() Then
        MsgBox "Could not ftp file"
    Else
        MsgBox "Sent"
    End If
End Sub
Function SendFtpFile_F() As Boolean
  Dim rc As Integer
  Dim iFreeFile As Integer
  Dim sFTPUserID As String
  Dim sFTPPassWord As String
  Dim sWorkingDirectory As String
  Dim sFileToSend As String

  Const FTP_BATCH_FILE_NAME = "myFtpFile.ftp"
  Const INCREASED_BUFFER_SIZE = 20480

  SendFtpFile_F = False

  sWorkingDirectory = "C:YourWorkingDirectory"
  sFileToSend = "NameOfFile.txt"


  On Error GoTo FtpNECAFile_EH

   'Kill ftp process file if it exists
    If Dir(sWorkingDirectory amp; FTP_BATCH_FILE_NAME) <> "" Then
      Kill sWorkingDirectory amp; FTP_BATCH_FILE_NAME
    End If

    'Create ftp process file
    iFreeFile = FreeFile
    Open sWorkingDirectory amp; FTP_BATCH_FILE_NAME For Output As #iFreeFile
      Print #iFreeFile, "open " amp; FTP_ADDRESS
      Print #iFreeFile, FTP_USERID
      Print #iFreeFile, FTP_PASSWORD
      Print #iFreeFile, "mput " amp; sWorkingDirectory amp; sFileToSend
      Print #iFreeFile, "quit"
    Close #iFreeFile

    'Shell command the ftp file to the server
    Shell "ftp -i -w:20480 -s:" amp; sWorkingDirectory amp; FTP_BATCH_FILE_NAME

  SendFtpFile_F = True

  GoTo FtpNECAFile_EX


FtpNECAFile_EH:
    MsgBox "Err", Err.Name

FtpNECAFile_EX:


  Exit Function

End Function
  

Может кто-нибудь помочь. Мне нужно подключиться к моему «ftp-серверу» и загрузить тот же файл Excel (Closeout.xlsb) с написанным в нем кодом VBA. У меня ничего не получилось.

Расположение файла = C:Goodman Входные файлы Имя файла = Closeout.xlsb

Подключение к = «ftp.MyServer.com «

Нужна помощь,

Блокировка

Комментарии:

1. Вы забыли подробно описать, что происходит, когда вы это пробовали. Уточните это в своем вопросе (это должно быть очевидно, но не пишите и не звоните мне, пожалуйста)

2. @LightnessRacesinOrbit Ты плохой ! 😉

3. Просто кажется, что он вообще ничего не делает. Как будто он вызывает и подключается, но это все. Я посмотрел, создает ли он загружаемый текстовый файл, как он должен загружаться в основной каталог. Расположение. Но ничего. Так что никакого ответа на код, ошибки или чего-либо еще. Я просто не уверен, что происходит. Я знаю только, что это не работает для меня.

4. @AndrewBarber: Плохой, как лиса !

5. та же проблема, она ничего не делает