Загрузка через SFTP с использованием кода Excel VBA

Я попытался использовать следующий код, который я нашел в предыдущий SO вопрос, чтобы загрузить сгенерированный файл .php на мой общий сервер через FTP.

Я использую Excel 2016 на Windows 10 и пытаюсь загрузить на сервер с 1and1.

Public Sub FtpSend()

Dim vPath As String
Dim vFile As String
Dim vFTPServ As String
Dim lInt_FreeFile01 As Integer

vPath = Environ("USERPROFILE") & "\Documents\UploadFiles\"vFile = "rd1.php"vFTPServ = "domain-name.co.uk"
lInt_FreeFile01 = FreeFile

'Mounting file command for ftp.exe
Open vPath & "\FtpComm.txt" For Output As #lInt_FreeFile01
Print #lInt_FreeFile01, "domain-name.co.uk"Print #lInt_FreeFile01, "username"Print #lInt_FreeFile01, "password"Print #lInt_FreeFile01, "/test/"Print #lInt_FreeFile01, "ascii"Print #lInt_FreeFile01, "send " & Environ("USERPROFILE") & "\Documents\UploadFiles\" & "rd1.php"
Print #lInt_FreeFile01, "bye"
Close #lInt_FreeFile01

Shell "ftp -n -i -g -s:" & vPath & "FtpComm.txt " & vFTPServ, vbNormalNoFocus

SetAttr vPath & "FtpComm.txt", vbNormal
Kill vPath & "\FtpComm.txt"
End Sub

Когда я запускаю макрос, нет обратной связи относительно того, что произошло, но файл не был перенесен в каталог / test / на сервере. Я попробовал несколько перестановок, но я не могу заставить его работать.

Любой совет, как я могу заставить это работать?

На другой ноте я тоже пробовал код Вот, но не смог заставить это работать …

Ранее я использовал FileZilla для передачи файлов по FTP, но эта книга Excel будет разослана нескольким членам команды, и возможность загрузки с использованием кода Excel VBA является важной частью оптимизации рабочего процесса.

0

Решение

Изменить эту строку

Print #lInt_FreeFile01, "/test/"

в

Print #lInt_FreeFile01, "cd test"

или возможно

Print #lInt_FreeFile01, "cd /test"

Если вам нужно установить активный каталог относительно root.

Если это не сработает, значит, ваша проблема в пути, с которого вы копируете:

Environ("USERPROFILE") & "\Documents\UploadFiles\" & "rd1.php"

потому что остальная часть вашего файла команд FTP выглядит законно.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]