Macro que convierte a TXT
Publicado por JOSE LUIS (60 intervenciones) el 27/04/2018 23:15:23
Buenos tardes a los integrantes de este foro, en esta ocasión recurro a Uds, para que me brinde su apoyo y colaboración en comprender o mejorar la macro que se detalla a continuación, dicha macro permite generar los datos aun archivo TXT., y mi duda es la siguiente:
1. Al ejecutar la macro desde la Hoja PLANILLA en el botón AFPNET WEB genera el archivo AFPNET.TXT como error.
2. Pero Cuando me dirijo y ubico en hoja AFPNET y ejecuto la macro EXPORTAR_TXT_ANCHOFIJO, genera el archivo AFPNET.TXT como OK.
3. Ahora bien en el codigo de la macro, indica que debe estar en la hoja10 (Sheets 10) .
Desde y agradezco su apoyo y colaboración.
1. Al ejecutar la macro desde la Hoja PLANILLA en el botón AFPNET WEB genera el archivo AFPNET.TXT como error.
2. Pero Cuando me dirijo y ubico en hoja AFPNET y ejecuto la macro EXPORTAR_TXT_ANCHOFIJO, genera el archivo AFPNET.TXT como OK.
3. Ahora bien en el codigo de la macro, indica que debe estar en la hoja10 (Sheets 10) .
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Sub EXPORTAR_TXT_ANCHOFIJO()
Dim i As Double
'Creamos automáticamente un .txt en blanco que llamamos EJEMPLO
'el archivo se creará en la misma unidad que tenemos el Excel.
Archivo_txt = ThisWorkbook.Path & "\" & "AFPNET.txt"
'si queremos cambiar su ubicación basta con poner Archivo_txt = "E:\EJEMPLO.txt"
Open Archivo_txt For Output As #1
With Sheets(10)
fin = Application.CountA(Range("A:A"))
For i = 2 To fin
'Asignamos a cada Campo la función que necesitamos aplicar
Campo1 = C_Der(.Cells(i, 1), 5)
Campo2 = C_Der(.Cells(i, 2), 12)
Campo3 = C_Der(.Cells(i, 3), 1)
Campo4 = C_Der(.Cells(i, 4), 20)
Campo5 = C_Der(.Cells(i, 5), 20)
Campo6 = C_Der(.Cells(i, 6), 20)
Campo7 = C_Der(.Cells(i, 7), 20)
Campo8 = C_Der(.Cells(i, 8), 1)
Campo9 = C_Der(.Cells(i, 9), 1)
Campo10 = C_Der(.Cells(i, 10), 1)
Campo11 = C_Der(.Cells(i, 11), 1)
Campo12 = C_Der(.Cells(i, 12), 9)
Campo13 = C_Der(.Cells(i, 13), 9)
Campo14 = C_Der(.Cells(i, 13), 9)
Campo15 = C_Der(.Cells(i, 15), 9)
Campo16 = C_Der(.Cells(i, 16), 1)
Campo17 = C_Izq(.Cells(i, 17), 2)
Print #1, Campo1 & Campo2 & Campo3 & Campo4 & Campo5 & Campo6 & Campo7 & Campo8 & Campo9 & Campo10 & Campo11 & Campo12 & Campo13 & Campo14 & Campo15 & Campo16 & Campo17
Next i
Close
End With
End Sub
Desde y agradezco su apoyo y colaboración.
Valora esta pregunta


0