Visual Basic for Applications, ou VBA, é uma versão da linguagem Visual Basic da Microsoft, integrada no pacote Office de ferramentas de software de produtividade. Programas VBA executar a partir de uma ferramenta de escritório - por exemplo , o Word - acessar e manipular os dados actualmente geridos por essa ferramenta - por exemplo, um documento do Word. Um programa VBA pode ler sua entrada ou gravar seus resultados , os arquivos hospedados em um servidor remoto através do protocolo de transferência de arquivos, ou FTP. Você pode escrever código VBA que instrui software cliente de FTP - pré-instalado por padrão no seu computador - para interagir com servidores FTP. Instruções
1
Criar o arquivo de comandos de FTP com uma lista de comandos que o cliente FTP irá executar. O seguinte fragmento de código VBA cria esse arquivo :
Dim ftpFileHandle As Integer
ftpFileHandle = FreeFile
Abra " ftpCommand.txt " For Output As # ftpFileHandle
Print # ftpFileHandle ", ftpserver.com aberto "
Print # ftpFileHandle , " ID de usuário "
Print # ftpFileHandle , "password"
Print # ftpFileHandle , "send localfile.xls "
Print # ftpFileHandle " recv remotefile.doc "
Print # ftpFileHandle , " bye "
close # ftpFileHandle
Substituir" ftpserver.com "com o nome do servidor de FTP, " userid "com o nome da sua conta no servidor e " password " com a sua senha. O código de exemplo carrega uma folha de cálculo contido em um arquivo chamado " localfile.xls " e faz o download de um documento contido em um arquivo chamado " remotefile.doc ". Você pode usar qualquer um dos comandos a partir da "Lista de comandos de FTP " no site Ferramentas NSF antes de fechar a sessão com "bye ".
2
Criar um lote ou um script executável, arquivo que invoca o cliente de FTP para que ele execute o arquivo de comando FTP. O seguinte fragmento de código VBA cria esse arquivo :
Dim batFileHandle As Integer
batFileHandle = FreeFile
Abra " doFtp.bat " For Output As # batFileHandle
Print # batFileHandle , "ftp -s: ftpCommand.txt "
close # batFileHandle
3
Execute o arquivo de lote , incluindo a seguinte linha no seu código VBA :
Shell ( " doFtp.bat " ) , vbHide '' , vbMinimizedNoFocus
Note que a linha contém duas aspas simples , sem qualquer caractere entre eles , imediatamente antes da segunda vírgula. Seu programa VBA irá chamar o arquivo em lotes que , por sua vez , irá chamar o cliente de FTP e tê-lo executar a seqüência de comandos a partir do Passo 1.