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

Este programa VBA lee un rango de Excel (datos de ventas) y escribe en un archivo de texto (Ventas.txt)

Código de Excel VBA para leer datos de un archivo de Excel (Datos de ventas: rango «A1: E26»). Necesita dos «For loop» para filas y columnas. Escriba cada valor con una coma en el archivo de texto hasta el final de las columnas (escriba sin coma solo el valor de la última columna). Realice el paso anterior hasta llegar al final de las filas. 

Datos de Ventas en Excel: 5 columnas y 25 filas

Los datos de ventas

Código VBA para crear un archivo de texto como se muestra a continuación

Código VBA:

  • Declaración de variables:  
Variable Tipo de datos Comentarios
miNombreDeArchivo  Cuerda Archivo de texto de salida (Ruta completa con nombre de archivo)
anillo Rango Rango de Excel para leer 
valor de celda Variante Variable para asignar cada valor de celda
fila Entero iterar filas
columna Entero iterar columnas
'Variable declarations
Dim myFileName As String, rng As Range, cellVal As Variant, row As Integer, col As Integer
  • Inicializar variables:
    • miNombreDeArchivo:El nombre del archivo con la ruta completa del archivo de texto de salida
    • rng: rango de Excel para leer datos de un Excel.
'Full path of the text file
myFileName = "D:\Excel\WriteText\sales.txt"
'Data range need to write on text file
Set rng = ActiveSheet.Range("A1:E26")

Abra el archivo de texto de salida y asigne una variable «# 1»

'Open text file
Open myFileName For Output As #1

‘Bucle anidado para iterar filas y columnas de un rango dado, por ejemplo: «A1: E26» [5 columnas y 26 filas]

'Number of Rows
For row = 1 To rng.Rows.Count
   'Number of Columns
   For col = 1 To rng.Columns.Count

Asigne el valor a la variable cellVal 

cellVal = rng.Cells(row, col).Value

Escriba cellVal con coma. Si la columna es igual a la última columna de una fila. valor de solo escritura sin la coma.

'write cellVal on text file
    If col = rng.Columns.Count Then
        Write #1, cellVal 
    Else
        Write #1, cellVal, 
    End If

Cerrar ambos bucles for

   Next col
Next row

Cierra el archivo

Close #1

Acercarse:

Paso 1: agregue una forma ( Crear archivo de texto ) a su hoja de trabajo 

Paso 2: Haga clic derecho en «Crear un archivo de texto» y «Asignar macro…»

Paso 3: Seleccione MacroParaCrearArchivoDeTexto

Paso 4: guarde su archivo de Excel como «Libro de trabajo habilitado para macros de Excel»   * .xlsm

Paso 5: Haga clic en » Crear archivo de texto «

Publicación traducida automáticamente

Artículo escrito por sk123online y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *