У меня есть огромный список IP-адресов, которые указывают на текстовый файл, который мне нужно скачать. Существует около 500 текстовых файлов, и текстовое имя файла совпадает с data.txt.
Моей первоначальной мыслью было использование макроса для выполнения работы.
Public Sub Example()
Dim URL As String, LocalFilename As String
URL = "ftp://user:pass@199.99.99.9/data.txt"
LocalFilename = "C:\Power Readings\Hall A\Company Name.txt"
If URLDownloadToFile(0, URL, LocalFilename, 0, 0) = 0 Then
'downloaded
Stop
End If
End Sub
Это работает аккуратно. Но это только один файл. Мой макрос выше позволяет загружать отдельный файл с FTP-сервера, переименовывает его в нужное мне положение и помещает в нужный каталог. Однако мне нужно это повторить еще около 100 раз для разных файлов. Как я могу это сделать? Я не против изменения ip, имени файла вручную в скрипте, но очевидно, что копирование и вставка скрипта вызывает ошибки.
Моя другая идея, было бы иметь 3 столбца в электронной таблице. Столбец A - это IP-адрес файла. B будет именем, которое я хотел бы переименовать при загрузке, а C будет каталогом, в который нужно загрузить. Можно ли это сделать? Поэтому все, что мне нужно сделать, это заполнить столбцы данными, нажать кнопку, и файл будет загружен, переименован и помещен в правильный каталог.
Последний вариант - иметь пакетный файл, который использует приглашение Windows Commant для загрузки всех файлов для меня. Но я не знаю ни одной из команд. Есть идеи?