
Tengo un libro de Excel que procesa la salida del modelo de otro programa. Ese programa produce archivos de salida de texto plano delimitados por espacios con un".plt"extensión. Tengo una conexión de datos en Excel para ingresar esos datos, pero requiere más clics de los que me gustaría. Actualmente el flujo de trabajo es este:
- Ejecute otro modelo.
- En Excel, haga clic en Datos->Actualizar todo
- En el cuadro de diálogo de archivo que se abre, haga clic en"Archivos de texto (*.prn, *.txt, *.csv)"
- Aparece el menú desplegable; haga clic en:"Todos los archivos (*.*)".
- Seleccione el nombre del archivo de la lista (el nombre del archivo nunca cambia - Siempre"Salida.plt")
- Seleccionar"Importar."
Desde aquí, recuerda todas las configuraciones para la conexión de datos: ubicaciones, texto en columnas, etc. Sin embargo, dado que el nombre de mi archivo nunca cambia, desearía que recordara el nombre de mi archivo, así solo tendría uno o dos. clics, en lugar de 5.
Intenté grabar una macro, siguiendo todos estos pasos, pero la única pieza que apareció en VBA esActiveWorkbook.RefreshAll
Respuesta1
Hay una opción para solicitar el nombre del archivo.
Vaya a Datos/Conexiones, elija su conexión, haga clic en propiedades.
En la sección de control de actualización, en la pestaña Uso, desmarque la casilla "solicitar nombre de archivo al actualizar".
Respuesta2
Dim File_Path As String
File_path=" C:\Users\owner\John\Output.plt"
Open File_Path for Input as #1
row_num= 5
Do until EOF(1)
Line Input #1, Line_FromFile
Line_Items = Split(Line_FromFile, ",")
Range("C"&row_num).Value = Line_Items(2)
Range("B"&row_num).Value = Line_Items(1)
Range("A"&row_num).Value = Line_Items(0)
row_num = row_num + 1
Loop
Close #1