Escribir archivo de texto en Excel VBA

Todos nos encontramos con este tipo de situación en la que tuvimos que poner grandes datos en archivos de Excel, pero finalmente, nos enfrentamos a la situación cuando el tamaño de ese archivo con los grandes datos aumentó tanto que tuvimos que convertirlo en un texto archivo. Debido a esto, no pudimos trabajar en ese archivo ni guardar el archivo en formato Excel. Este tipo de situación la hemos visto en muchos proyectos donde necesitamos extraer los datos de la base de datos. Es posible extraer los datos de la base de datos si se usa un archivo de texto para este propósito. El archivo de texto no se cuelga y podemos almacenar tantos datos y tablas en un solo archivo de texto sin bloquear el archivo. Para esto, necesitamos convertir el archivo de Excel en un archivo de texto. Aunque no es una gran tarea cuando es una actividad repetitiva y puede llevar mucho tiempo realizarla.

Para evitar esto, tenemos un proceso en VBA, con eso, podemos convertir el archivo de Excel en un archivo de texto sin dañar los datos. Con esto, podemos guardar un gran conjunto de datos en el archivo de texto al reducir y comprimir también el tamaño del archivo.

Comprender el código VBA de escribir el archivo de texto es bastante complejo, pero no es difícil de entender.

Proceso seguido:

  • Ruta del archivo: poner la ruta del archivo donde hemos guardado el archivo de Excel.
  • Modo: Para qué necesitamos abrir el archivo. Puede ser el modo de solo lectura o el propósito de escritura o necesitamos usarlo para agregar los datos.
  • Número de archivo: con esto, podemos contar la cantidad de tiempo que hemos utilizado para un archivo de Excel para un archivo de texto.

¿Cómo escribir un archivo de texto en Excel VBA?

Aprenderemos a escribir un archivo de texto usando el código VBA en Excel con algunos ejemplos.

Puede descargar esta plantilla de Excel de archivo de texto de escritura VBA aquí - Plantilla de Excel de archivo de texto de escritura VBA

Ejemplo # 1 - Archivo de texto de escritura VBA

En este ejemplo, veremos cómo asignar la ubicación del archivo con el código VBA para escribirlo sobre el formato de archivo de texto. Para esto, necesitamos un módulo.

Paso 1: vaya a la opción de menú Insertar y seleccione Módulo como se muestra a continuación.

Paso 2: Ahora, en el módulo abierto, escriba la subcategoría de VBA Write Text o podemos elegir cualquier nombre según nuestra elección.

Código:

 Sub WriteTextFile2 () End Sub 

Paso 3: en el primer paso de codificación, declare la variable myFile como String como se muestra a continuación.

Código:

 Sub WriteTextFile2 () Dim myFile como String End Sub 

Paso 4: en la variable asignada, coloque la ubicación del archivo que necesitamos convertir de Excel a texto. Aquí hemos nombrado ese archivo como Prueba con la extensión. txt como se muestra a continuación.

Código:

 Sub WriteTextFile2 () Dim myFile As String myFile = "D: \ VPB File \ April Files \ Final location \ Final Input.txt" End Sub 

Paso 5: Como hemos visto en la descripción de VBA Write Text File, primero abriremos el archivo de Excel y luego agregaremos los datos de Excel a un archivo de texto con la siguiente línea de comando.

Código:

 Sub WriteTextFile2 () Dim myFile As String myFile = "D: \ VPB File \ April Files \ Final location \ Final Input.txt" Abra myFile para agregar como # 1 End Sub 

Paso 6: Ahora pongamos algo de texto en un archivo de texto que nos gustaría ver como se muestra a continuación con la ayuda de Escribir # 1 para la primera tabla. Hemos ingresado algunas marcas de automóviles al azar con nombre y especificaciones del modelo.

Código:

 Sub WriteTextFile2 () Dim myFile As String myFile = "D: \ VPB File \ April Files \ Final location \ Final Input.txt" Abra myFile para agregar como # 1 Write # 1, "Ford", "Figo", 1000, " millas ", 2000 Escribir # 1, " Toyota ", " Etios ", 2000, " millas ", Fin Sub 

Paso 7: Ahora cierre la primera tabla como se muestra a continuación.

Código:

 Sub WriteTextFile2 () Dim myFile As String myFile = "D: \ VPB File \ April Files \ Final location \ Final Input.txt" Abra myFile para agregar como # 1 Write # 1, "Ford", "Figo", 1000, " millas ", 2000 Escribir # 1, " Toyota ", " Etios ", 2000, " millas ", Cerrar # 1 Fin Sub 

Paso 8: También nos gustaría ver el mensaje una vez que finalice el proceso.

Código:

 Sub WriteTextFile2 () Dim myFile As String myFile = "D: \ VPB File \ April Files \ Final location \ Final Input.txt" Abra myFile para agregar como # 1 Write # 1, "Ford", "Figo", 1000, " millas ", 2000 Escribir # 1, " Toyota ", " Etios ", 2000, " millas ", Cerrar # 1 MsgBox" Guardado "Fin Sub 

Paso 9: Ahora compile el código y ejecútelo haciendo clic en el botón Reproducir ubicado debajo de la barra de menú como se muestra a continuación. Si no se encuentra ningún error, obtendríamos el cuadro de mensaje con el mensaje como Guardado como se muestra a continuación.

Paso 10: Ahora ve a la ubicación que hemos mencionado en el código anterior, veremos el archivo de texto con el nombre Prueba como se muestra a continuación.

Ahora para verificar si este archivo de texto tiene los mismos datos que hemos ingresado a través de VBA, ábralo. Veremos que se han ingresado los mismos datos.

Ejemplo # 2 - Archivo de texto de escritura VBA

Hay otra forma de hacer el mismo trabajo.

Paso 1: en el ejemplo, utilizaremos el mismo código que hemos escrito anteriormente, pero habría un ligero cambio en el código utilizado. Consideremos el mismo código que se muestra en el ejemplo-1.

Código:

 Sub WriteTextFile2 () Dim myFile As String myFile = Open myFile For Append As # 1 Write # 1, "Ford", "Figo", 1000, "miles", 2000 Write # 1, "Toyota", "Etios", 2000, "millas", Cerrar # 1 MsgBox "Guardado" Fin Sub 

Paso 2: ahora en lugar de la ubicación del archivo, seleccione el libro activo con ActiveWorkbook como se muestra a continuación.

Código:

 Sub WriteTextFile2 () Dim myFile As String myFile = ActiveWorkbook. Abra myFile para agregar como # 1 Escriba # 1, "Ford", "Figo", 1000, "millas", 2000 Escriba # 1, "Toyota", "Etios", 2000, "millas", Cierre # 1 MsgBox "Guardado "Fin Sub 

Paso 3: Ahora seleccione la ruta de la lista desplegable de ActiveWorkBook .

Código:

 Sub WriteTextFile2 () Dim myFile As String myFile = ActiveWorkbook.Path Abra myFile para Agregar como # 1 Escriba # 1, "Ford", "Figo", 1000, "millas", 2000 Escriba # 1, "Toyota", "Etios", 2000, "millas", Cerrar # 1 MsgBox "Guardado" Fin Sub 

Paso 4: Luego seleccione la ruta donde necesitamos agregar los datos en el archivo de texto separado por un ampersand.

Código:

 Sub WriteTextFile2 () Dim myFile As String myFile = ActiveWorkbook.Path & "\ VPB File" Open myFile For Append As # 1 Write # 1, "Ford", "Figo", 1000, "miles", 2000 Write # 1, " Toyota ", " Etios ", 2000, " millas ", Cerrar # 1 MsgBox" Guardado "Fin Sub 

Paso 5: Ahora compila nuevamente el código y ejecútalo después de eso. Al completar con éxito la ejecución, obtendremos el mensaje como Guardado .

Ahora, nuevamente, vaya a la ruta donde hemos guardado este archivo que tiene el código y vea si el archivo de texto está guardado allí o no.

Ahora abra el archivo para verificar si los datos se han agregado correctamente o no. Encontraremos que los datos se agregan de la misma manera que sucedió en el ejemplo-1.

Pros de Excel VBA Escribir archivo de texto

  • Ni siquiera tenemos que abrir ningún archivo para agregar los datos.
  • Si los datos son enormes, entonces podemos agregar los datos de Excel a Texto sin abrir el archivo. Por lo tanto, no hay ningún problema en el manejo del archivo también.
  • Si seguimos el proceso compartido en el ejemplo-2, entonces ni siquiera tenemos que dar la ruta donde queremos ver el archivo de texto de salida.

Cosas para recordar

  • En el proceso que se muestra en el ejemplo 1, podemos colocar el archivo en la ubicación donde queremos ver el resultado.
  • En el proceso que se muestra en el ejemplo 2, considerará automáticamente la ubicación del archivo que tiene el código VBA del archivo de texto de escritura VBA.
  • Incluso podemos seleccionar los datos de cualquier archivo de Excel que queremos convertir en el archivo de texto.
  • Podemos seleccionar y crear muchos como una tabla que queremos agregar en el archivo de texto.

Artículos recomendados

Esta es una guía para VBA Write Text File. Aquí discutimos cómo escribir un archivo de texto en Excel usando el código VBA junto con ejemplos prácticos y una plantilla de Excel descargable. También puede consultar nuestros otros artículos sugeridos:

  1. VBA InStr explicado con ejemplos
  2. Tipo de datos enteros de VBA
  3. VBA ISNULL explicado con ejemplos
  4. Transponer un rango en VBA

Categoría: