Codigo Macro para archivos txt

Quiero saber si alguien puede darme una idea con unos de una macro.

Por ejemplo tengo 2 carpetas cada una con DOS archivos txt.

En la 1 carpeta tengo dos archivos llamados: AF1.txt Y el otro llamado AM1.txt

En la 2DA carpeta tengo 2 archivos llamados: AF3.txt Y el otro llamado AM3.txt

Como haria para hacer una macro que al ejecutar. Me unifique en un solo archivo AF1 Y AF3

Y en otro archivo txt me unifique AM1 Y AM3. Osea que como resultado se generen dos archivos txt. Cada uno unificado con todos los que empiecen con AF y todos los que empiecen con AM.

1 respuesta

Respuesta
1

Prueba con este código en una copia de los ficheros por si algo no sale como debería:

Sub prueba()
    'Declarar objetos
    Dim fso As FileSystemObject
    Dim ts1 As TextStream, ts2 As TextStream
    'Declarar variable
    Dim sLínea As String
    'Establecer objetos
    Set fso = New Scripting.FileSystemObject
    Set ts1 = fso.OpenTextFile("E:\Borrar\borrar1\AF1.txt", ForAppending)
    Set ts2 = fso.OpenTextFile("E:\Borrar\borrar2\AF3.txt", ForReading)
    'Proceso
    While Not ts2.AtEndOfStream
        sLínea = ts2.ReadLine
        Ts1. WriteLine sLínea
    Wend
    'Cerrar ficheros
    Ts1. Close
    Ts2. Close
    'Liberar objetos
    Set fso1 = Nothing
    Set ts1 = Nothing: Set ts2 = Nothing
End Sub

Tendrás que cambiar las rutas donde están ambos ficheros.

Tal como va el código, sería para los "AF". Para los "AM", en principio debería bastar con cambiar los nombres de los ficheros.

Saludos_

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas