Visual Basic para Aplicaciones o VBA , es una versión del lenguaje de Visual Basic de Microsoft , integrado en la suite Office de herramientas de software de productividad. Programas de VBA se ejecutan desde una herramienta de oficina - por ejemplo, Word - acceder y manipular los datos gestionados actualmente por esa herramienta - por ejemplo , un documento de Word. Un programa de VBA puede leer su entrada desde o escribir sus resultados , los archivos alojados en un servidor remoto a través del protocolo de transferencia de archivos , o FTP. Se puede escribir código VBA que instruye el software de cliente FTP - preinstalado por defecto en tu ordenador - para interactuar con los servidores FTP . Instrucciones
1
Crear el archivo de comandos FTP con una lista de comandos que el cliente FTP ejecutará . El fragmento de código VBA siguiente se crea dicho archivo :
ftpFileHandle Dim As Integer
ftpFileHandle = FreeFile
Abrir " ftpCommand.txt " para la salida como # ftpFileHandle
< p> Print # ftpFileHandle , " abierto ftpserver.com "
Print # ftpFileHandle , " usuario"
Print # ftpFileHandle , "password "
Print # ftpFileHandle , "enviar localfile.xls "
Print # ftpFileHandle , " remotefile.doc recv "
Print # ftpFileHandle , " bye "
Close # ftpFileHandle
Reemplazar" ftpserver.com "con el nombre del servidor FTP, " ID de usuario "con el nombre de su cuenta en el servidor y " password " con su contraseña . El código de ejemplo carga una hoja de cálculo contenido en un archivo llamado " localfile.xls " y descarga un documento contenido en un archivo llamado " remotefile.doc ". Puede utilizar cualquiera de los comandos de la "Lista de comandos FTP " en la página web de NSF Herramientas antes de cerrar la sesión con "bye ".
2
Crear un proceso por lotes o script ejecutable , el archivo que invoca el cliente FTP para que lo ejecute el archivo de comandos FTP. El fragmento de código VBA siguiente se crea dicho archivo :
batFileHandle Dim As Integer
batFileHandle = FreeFile
Abrir " doFtp.bat " para la salida como # batFileHandle
< p> Print # batFileHandle , "ftp - s : ftpCommand.txt "
Close # batFileHandle
3
Ejecute el archivo por lotes mediante la inclusión de la siguiente línea en el código VBA :
Shell ( " doFtp.bat ") , vbHide '' , vbMinimizedNoFocus
Tenga en cuenta que la línea contiene dos comillas simples , sin ningún carácter entre ellos , inmediatamente antes de la segunda coma. Su programa de VBA invocará el archivo por lotes que , a su vez , se invocará el cliente FTP y hacer que ejecute la secuencia de comandos desde el paso 1.