У меня есть библиотека VBA, которая поддерживает FTP, я бы тоже хотел использовать telnet.В данный момент я пишу сценарий Perl, который выполняет telnet на основе текстового файла, но я бы хотел подключить telnet-соединение непосредственно из VBA.У кого-нибудь есть источник для этого?Я не хочу использовать надстройку, мне нужно, чтобы код был автономным.
Если вы можете использовать элемент управления MS WinSock (см. Также , используя winsock в VBA )
Дополнительные ресурсы:
Библиотека MSDN: использование элемента управления Winsock
(Visual Basic) Winsock Control
если нет, вы можете использовать cmd.exe и SendKeys, возможно:
SendKeys
Отказ от ответственности: я скопировал приведенный ниже код из второй ссылки ниже и немного изменил его для VBA.
sub telNETScript() On Error Resume Next Dim WshShell as object set WshShell=CreateObject("WScript.Shell") WshShell.run "cmd.exe" WScript.Sleep 1000 'Send commands to the window as needed - IP and commands need to be customized 'Step 1 - Telnet to remote IP' WshShell.SendKeys "telnet xx.xx.xx.73 9999" WshShell.SendKeys ("{Enter}") WScript.Sleep 1000 'Step 2 - Issue Commands with pauses' WshShell.SendKeys ("{Enter}") WScript.Sleep 1000 WshShell.SendKeys "5" WshShell.SendKeys ("{Enter}") WScript.Sleep 1000 'Step 3 - Exit Command Window WshShell.SendKeys "exit" WshShell.SendKeys ("{Enter}") WScript.Quit end sub
SendKeys - не лучшее и не самое надежное решение, но это было все, что я мог найти, когда сделал это 12 лет назад на своей последней работе.
Подробнее:
Telnet & Excel - Microsoft.excel.programming
Как автоматизировать команды Telnet с помощью VBScript