複数のFTPサーバーから特定のファイルを取得しようとしています。これらのサーバーの詳細はExcelファイルに保存されます。だから私は.bat
ファイルを生成するためにVBAコードを書いています。ftp.exe(VBAで生成されたバッチファイル)を使用して複数のFTPサーバーに順番に接続
コード:
Const script = "C:\Users\xyz.abc\trial.bat"
Dim fileno As Integer
Dim retval As Variant
fileno = FreeFile
Open script For Output As #fileno
Dim i As Integer
Print #fileno, "open " & Cells(2, 2).Value 'server ip
Print #fileno, Cells(2, 3).Value 'username
Print #fileno, Cells(2, 4).Value 'password
Print #fileno, "cd " & Cells(2, 5).Value 'path
Print #fileno, "get " & Cells(2, 6).Value 'filename
Print #fileno, "bye"
Print #fileno, "open " & Cells(3, 2).Value 'server ip
Print #fileno, Cells(3, 3).Value 'username
Print #fileno, Cells(3, 4).Value 'password
Print #fileno, "cd " & Cells(3, 5).Value 'path
Print #fileno, "get " & Cells(3, 6).Value 'filename
Print #fileno, "bye"
Close #fileno
私が直面しています問題は、それは、最初のサーバにログインし、ファイルを取得してから停止しています。次回のサーバーログインには向かない。個別に両方のサーバーで動作しています。 .bat
ファイルを介して、この複数のログインを手伝ってください。
「Print #fileno」の前に 'Print #fileno、SLEEP 10'を追加すると、&Cells(3,2).Value'が開きます。また、セルオブジェクトを完全修飾することもできます。たとえば、 'Cells(2、2).Value'は' ThisWorkbook.Sheets( "Sheet1")です。セル(2、2).Value' –