Excel - Como obtener este formato mediante una macro

 
Vista:
sin imagen de perfil
Val: 27
Ha aumentado 1 puesto en Excel (en relación al último mes)
Gráfica de Excel

Como obtener este formato mediante una macro

Publicado por Victor (14 intervenciones) el 24/09/2018 06:44:17
Que tal gente, ocupo de su ayuda saben de que estoy realizando una macro que tiene como finalidad obtener cierto formato que me fue especificado, la macro ya la llevo en su gran mayoría avanzada pero hay una parte del formato que no se como hacerlo miren
Les adjunto 2 archivos en un rar y su contenido es el siguiente:
El archivo prueba 2 BOM de JBA es el formato final que debe generar la macro
El archivo que se llama prueba 2 BOM de JDEwards es lo que llevo de avance en la hoja no. 3 (Sheet 3) aparece el formato que hasta el momento puedo generar con la macro, mi duda es como puedo hacer para establecer cierto numero de caracteres en cada celda (126 caracteres), y si excede el limite de caracteres que lo ingrese en la siguiente celda, todo debe de ir generado en la celda "A" (como se muestra en el archivo BOM de JBA) esta es la única parte que me falta, la macro es lo menos lo que requiero es saber como hacer esa parte que les estoy especificando, ya yo me encargare de agregarlo en la macro.
Si me pueden auxiliar se los agradecería mucho!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Como obtener este formato mediante una macro

Publicado por Antoni Masana (2464 intervenciones) el 24/09/2018 14:11:01
En el segundo libro veo en la hoja Sheet3 veo que cada celda de la columna A tiene una función y no veo el codigo, porque no es de Excel.

Te pongo unas lineas para explicarme mejor:

Diseño bueno
1
2
3
4
5
6
7
A                    B                            C                               D        E
---           -------------   --------------------------------------------     ------  ------------------
..3           400631R02       02 PCB BCM 4                            P         1.000  EA
..3           032268487104K   02 CAP CER X7R 1206 100V 10% 100nF LF   P U       2.000  EA C21 C56
..3           032271128222K   02 Cap Cer X7R 0603 50V 10% 2.2nF LFREE P U      30.000  EA C106 C122       C128       C138
                                                                                          C151 C156       C163       C175
                                                                                          C182            C194       C203

Diseño malo
1
2
3
4
5
.                    A                            B                               C        D
---           -------------   --------------------------------------------     ------  ------------------
              0332706821003          RES 0805 100K +-1% 0.125W                                      30.000     R116 R117 R118 R119 R139 R140 R141 R142 R143 R144 R145 R146 R147 R148 R149 R150 R151 R152 R153 R154 R156 R157 R170 R196 R197 R29 R391 R392 R427 R435
              0332706821331          RES 0805 1K33 +-1% 0.125W                                      8.000     R171 R172 R173 R174 R175 R176 R177 R178
              0332706821693          RES 0805 169K +-1% 0.125W                                      18.000     R229 R230 R231 R232 R233 R234 R235 R236 R238 R239 R240 R241 R246 R248 R369 R373 R374 R375

Te cuento que pegas veo:

- En lugar de una función que te rellene la celda debes hacer una MACRO que te rellene toda la columna por que de lo contrario sera muy complicado.

1º punto: la columna B esta bien.
2º punto: la columna C esta mal porque cuando la columna B tiene menos caracteres hay que rellenar los espacios para alinear la segunda columna.

No es la solució pero de momento para in tomando contacto

1
=_xlfn.CONCAT(Izquierda("              " & Sheet2!A143 & "          "; 37);izquierda(Sheet2!B143 & "                                      "; 43) ;  Derecha("  " & Sheet2!C143;2) ; ".000"..

Con esta formula tenemos las columnas A, B y C alineadas y ahora viene lo más difícil que es cortar y alinear la columna D.

Ahora es cuando interviene la macro porque todo lo expuesto arriba lo vamos a asignar a una variable:

y aqui pongo un trozo de la macro con algunos errores de sintaxis para ver si se entiende la idea

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
sub Macro()
    ...
    ' --- Componemos la línea al completo
 
    Linea=Izquierda("              " & Sheet2!A143 & "          "; 37) & _
          izquierda(Sheet2!B143 & "                                      "; 43) & _
            Derecha("  " & Sheet2!C143;2) ; ".000" & _
            Sheet2!D4
 
    ' --- Metemos los primeros 160 caracteres
 
    If Len(Linea)>160 Then
       Pos=160
       While mid(Linea, 160) <> " ": Pos = Pos -1 ; Wend
       Fila = Fila + 1
       Cells(Fila, "A") = Left(Linea, Pos)
       Linea = Mid$(Linea, Pos+1)
    Else
       Cells(Fila, "A") = Linea
       Linea = ""
    End If
 
    ' --- Si habia mas de 160 caracteres los vamos añadiendo de 80 en 80 para que quede alineado
 
    While Len(Linea)> 0
       Pos=80
       While mid(Linea, 80) <> " ": Pos = Pos -1 ; Wend
       Cells(Fila, "A") = Space(80) + Left(Linea, Pos)
       Linea = Mid$(Linea, Pos+1)
    Wend
    ...
End Sub

Ahora no tengo tiempo de hacerlo mejor.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Como obtener este formato mediante una macro

Publicado por Antoni Masana (2464 intervenciones) el 24/09/2018 23:14:27
Adjunto los archivos con una macro que hace lo que comento arriba.

Falta pulir un poco la macro, margenes y alineación pero básicamente es lo que decía.

Mañana le doy un repaso.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Como obtener este formato mediante una macro

Publicado por Antoni Masana (2464 intervenciones) el 25/09/2018 07:24:21
Como prometí aqui esta la macro corregida :

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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
Sub Macro_Concatenar()
    Dim Fila_Orig As Long, Texto As String, Pos As Integer, _
        Fila_Dest As Long
 
    Columns("A:A").Select
    Selection.ClearContents
 
    Fila_Orig = 2
    Fila_Dest = 1
 
    Sheets("Sheet2").Select
    While Cells(Fila_Orig, "A") <> ""
        Texto = Space(14) + Left$(Cells(Fila_Orig, "A") + Space(19), 19) + _
                            Left$(Cells(Fila_Orig, "B") + Space(46), 46) + _
                Right$("  " & Str(Cells(Fila_Orig, "C")) + ".000", 6) + _
                       Space(5) + Cells(Fila_Orig, "D")
 
        ' --- Metemos los primeros 160 caracteres
 
        Sheets("Sheet3").Select
 
        If Len(Texto) > 160 Then
           Pos = 160
           While Mid$(Texto, Pos, 1) <> " ": Pos = Pos - 1: Wend
           Cells(Fila_Dest, "A") = Left$(Texto, Pos)
           Texto = Mid$(Texto, Pos + 1)
        Else
           Cells(Fila_Dest, "A") = Texto
           Texto = ""
        End If
 
        Fila_Dest = Fila_Dest + 1
 
        ' --- Si habia mas de 160 caracteres los vamos añadiendo de 80 en 80 para que quede alineado
 
        While Len(Texto) > 0
           If InStr(Texto, " ") = 0 Then
              Cells(Fila_Dest, "A") = Space(90) + Texto
              Fila_Dest = Fila_Dest + 1
              Texto = ""
           Else
              Pos = 70
              While Mid(Texto, Pos, 1) <> " " And Pos > 0: Pos = Pos - 1: Wend
              Cells(Fila_Dest, "A") = Space(90) + Left(Texto, Pos)
              Fila_Dest = Fila_Dest + 1
              Texto = RTrim$(Mid$(Texto + " ", Pos + 1))
           End If
        Wend
 
        Sheets("Sheet2").Select
        Fila_Orig = Fila_Orig + 1
    Wend
    Sheets("Sheet3").Select
End Sub

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 27
Ha aumentado 1 puesto en Excel (en relación al último mes)
Gráfica de Excel

Como obtener este formato mediante una macro

Publicado por Victor (14 intervenciones) el 25/09/2018 18:03:02
Le agradezco de verdad mucho por su gran ayuda que me ha proporcionado, me ha sacado de un gran apuro! Todo me ha servido!!
Solo me quedo una pequeña duda, ya solo es esto el mismo codigo lo puedo modificar a mi gusto?, es decir, por ejemplo mi limite de caracteres para cada fila debe ser de 126 caracteres maximo (incluyendo espacios). En la parte donde agrego 90 espacios esta perfecto, pero de igual manera el limite de caracteres debe de ser 126 como maximo (90 al inicio, despues en el espacio 91 comenzar a escribir los numeros de parte teniendo como limite 36 caracteres), si sobrepasa los 126 mandarlo a la siguiente fila y seguir la misma instruccion hasta terminar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Como obtener este formato mediante una macro

Publicado por Antoni Masana (2464 intervenciones) el 25/09/2018 20:44:23
Modifico la macro para un ancho de 126 caracteres y remarco los cambios.

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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
Sub Macro_Concatenar()
    Dim Fila_Orig As Long, Texto As String, Pos As Integer, _
        Fila_Dest As Long
 
    Columns("A:A").Select
    Selection.ClearContents
 
    Fila_Orig = 2
    Fila_Dest = 1
 
    Sheets("Sheet2").Select
    While Cells(Fila_Orig, "A") <> ""
        Texto = Space(14) + Left$(Cells(Fila_Orig, "A") + Space(19), 19) + _
                            Left$(Cells(Fila_Orig, "B") + Space(46), 46) + _
                Right$("  " & Str(Cells(Fila_Orig, "C")) + ".000", 6) + _
                       Space(5) + Cells(Fila_Orig, "D")
 
        ' --- El margen de la segunda fila es igual a:  14 + 19 + 46 + 6 + 5 = 90
 
        ' --- Metemos los primeros 126 caracteres
 
        Sheets("Sheet3").Select
 
        If Len(Texto) > 126 Then     ' <-- Aqui
           Pos = 126                 ' <-- Aqui
           While Mid$(Texto, Pos, 1) <> " ": Pos = Pos - 1: Wend
           Cells(Fila_Dest, "A") = Left$(Texto, Pos)
           Texto = Mid$(Texto, Pos + 1)
        Else
           Cells(Fila_Dest, "A") = Texto
           Texto = ""
        End If
 
        Fila_Dest = Fila_Dest + 1
 
        ' --- Si habia mas de 126 caracteres los vamos añadiendo
        '      de 36 en 36 para que quede alineado.
        '      36 = 126 - 90
 
        While Len(Texto) > 0
           If InStr(Texto, " ") = 0 Then
              Cells(Fila_Dest, "A") = Space(90) + Texto
              Fila_Dest = Fila_Dest + 1
              Texto = ""
           Else
              Pos = 36               ' <-- Aqui
              While Mid(Texto, Pos, 1) <> " " And Pos > 0: Pos = Pos - 1: Wend
              Cells(Fila_Dest, "A") = Space(90) + Left(Texto, Pos)
              Fila_Dest = Fila_Dest + 1
              Texto = RTrim$(Mid$(Texto + " ", Pos + 1))
           End If
        Wend
 
        Sheets("Sheet2").Select
        Fila_Orig = Fila_Orig + 1
    Wend
    Sheets("Sheet3").Select
End Sub

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 27
Ha aumentado 1 puesto en Excel (en relación al último mes)
Gráfica de Excel

Como obtener este formato mediante una macro

Publicado por Victor (14 intervenciones) el 25/09/2018 20:58:48
wow que Bueno que nos quedo igual, ahora viene una parte interesante
Necesito realizar un sorteo dentro de estos 36 caracteres los cuales Deben de ir separados con la siguiente especificacion
Despues de los 90 espacios en blanco todo esto se divide por columnas (Ficticias, pero llevan un patron)
Le adjunto una imagen donde se muestra (debido a que la caja de texto no lo muestra como yo quiero)
Para este formato la primer columna C1 solo almacena 13 caracteres (incluyendo espacios) y deja 3 espacios entre la columna 1 y 2
La columna C2 solo almacena 10 caracteres (incluyendo espacios) y deja solo 1 espacio entre columna 2 y 1

La columna C3 solo allmacena 10 digitos y hasta aqui llega el tope
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Como obtener este formato mediante una macro

Publicado por Antoni Masana (2464 intervenciones) el 25/09/2018 22:09:34
No entiendo lo que me cuentas de los patrones. ¿Te refieres a los datos de la columna D de la hoja 2?

Hablas de la columna C1 pero ¿es la Columna C o la celda C1? y ¿de que hoja?

Y por cierto hay un error. Despúes de ejecutar el ultimo macro en la fila 34 el valor correspondiente a la columna C de la hoja2 esta mal (Fila 15 de la HOJA 2)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 27
Ha aumentado 1 puesto en Excel (en relación al último mes)
Gráfica de Excel

Como obtener este formato mediante una macro

Publicado por Victor (14 intervenciones) el 26/09/2018 05:54:18
Mas bien esta parte se puede hacer con los datos de la columna D "Hoja2" y despues juntarlos todo en 1 solo en la Fila "A" pero no se como explicarme la verdad
Lo que quiero hacer es agruparlos de manera que queden igual al formato JBA al primer archivo que he mandado(se lo vuelvo adjuntar), vamos por buen camino, no se preocupe solo esta parte de la secuencia que lleva despues de ingresar el texto de las columnas "A,B,C" de la hoja 2
Y mencionaba las columnas C1, C2, C3 (Son ficticias no existen, era para usarlo de referencia)
Entonces con los datos de la columna D mi idea es esta que en esta parte los datos tengan un limite de 36 caracteres y si sobre pasa mandarlos a una nueva fila.
Comenzamos con los 90 espacios (esto siempre ha sido constante, Imagen 0 adjunta) despues en el espacio 91 comenzamos a escribir (Imagen 0.1 adjunta) lo que muestro a continuacion
La primer parte es 13 caracteres incluyendo espacios (Imagen 1 adjuntada en el rar) despues dejamos 3 espacios (Imagen 1.1 adjunta)
La segunda parte son 10 caracteres incluyendo espacios (Imagen 2 adjuntada en el rar) despues dejamos 1 espacio (Imagen 2.1 adjunta)
La tercer parte son 10 caracteres (Imagen 3 adjunta) Aqui terminamos
dando como total 36 caracteres se logro entender mi idea ?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Como obtener este formato mediante una macro

Publicado por Antoni Masana (2464 intervenciones) el 26/09/2018 12:02:27
Los valores que me has puesto en el mensaje están mal:

La primer parte es 13 caracteres incluyendo espacios (Imagen 1 adjuntada en el rar) despues dejamos 3 espacios (Imagen 1.1 adjunta)
La segunda parte son 10 caracteres incluyendo espacios (Imagen 2 adjuntada en el rar) despues dejamos 1 espacio (Imagen 2.1 adjunta)
La tercer parte son 10 caracteres (Imagen 3 adjunta) ...

13 + 3 + 10 + 1 + 10 = 37

En la muestra hay este formato

13 + 3 + 8 + 3 + 9 = 36

Propongo:

10 + 3 + 10 + 3 + 10 = 36

De todas formas se puede cambiar facilménte en la macro.


Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 27
Ha aumentado 1 puesto en Excel (en relación al último mes)
Gráfica de Excel

Como obtener este formato mediante una macro

Publicado por Victor (14 intervenciones) el 26/09/2018 17:44:07
Excelente Antoni ahora viene la parte dificil, hacer pruebas en muchos muchos muchos archivos ya yo me encargo de esta parte pero… me encontre este detalle me puede auxiliar.
Porque hay veces en las que sale el texto pegado y no es separado por un espacio, adjunto una imagen para que vea a que me refiero (imagen 1), ahora otra parte :
Se puede modificar el codigo para que sea 13 caracteres + 3 espacios, 10 caracteres + 1 espacio, 10 caracteres = 37
Me agrado su propuesta
10 + 3 + 10 + 3 + 10 = 36
Pero me gustaria que fuera
13 + 3 +10 + 1 + 10 = 37 (es que esto se asemeja mas al formato JBA) lo que se busca es que el archivo resultante sea lo mas parecido a JBA si se puede igual mucho mejor.
O si me puede decir que parte del codigo es la que debo modificar para yo adaptarlo como yo guste, la verdad si le entiendo a gran parte de su codigo pero hay partes que me quedo como que patinando si me puede ayudar por favor.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Como obtener este formato mediante una macro

Publicado por Antoni Masana (2464 intervenciones) el 26/09/2018 19:23:50
Arreglado.

Ahora la linea es de 127 en lugar de 126, 90 + 37

Te pongo en negrota las líneas modificadas.

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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
Sub Macro_Concatenar()
    Dim Fila_Orig As Long, Texto As String, Pos As Integer, _
        Fila_Dest As Long
 
    Dim Tabla() As String, Contar As Integer, Tipo(3) As Byte, Pun As Byte
 
    Dim Campo_1 As String, Campo_2 As String, _
        Campo_3 As String, Campo_4 As String
 
    Tipo(1) = 13
    Tipo(2) = 10
    Tipo(3) = 10
 
    Sheets("Sheet3").Select
 
    Columns("A:A").Select
    Selection.ClearContents
 
    Fila_Orig = 2
    Fila_Dest = 1
 
    Sheets("Sheet2").Select
    While Cells(Fila_Orig, "A") <> ""
 
        ' ---&--- Trata la Columna D
 
        Tabla = Split(Cells(Fila_Orig, "D"), " ")
 
        Auxiliar = ""
        Pun = 1
        Campo_4 = ""
        For a = LBound(Tabla) To UBound(Tabla)
            If Len(Auxiliar) + Len(Tabla(a)) <= Tipo(Pun) Then
               Auxiliar = Auxiliar + Tabla(a) + " "
            Else
               Campo_4 = Campo_4 + Left$(Auxiliar + Space(Tipo(Pun)), Tipo(Pun))
               If Pun = 1 Then Campo_4 = Campo_4 + "   "
               If Pun = 2 Then Campo_4 = Campo_4 + " "
               Pun = Pun + 1: If Pun = 4 Then Pun = 1
               Auxiliar = Tabla(a) + " "
            End If
        Next
        Campo_4 = Campo_4 + Left$(Auxiliar + Space(Tipo(Pun)), Tipo(Pun))
 
        ' ---&--- Compongo la linea
 
        Campo_1 = Left$(Cells(Fila_Orig, "A") + Space(19), 19)
        Campo_2 = Left$(Cells(Fila_Orig, "B") + Space(46), 45)
        Campo_3 = Right$("   " & Str(Cells(Fila_Orig, "C")) + ".000", 7)
 
        Texto = Space(14) + Campo_1 + Campo_2 + Campo_3 + Space(5) + Campo_4
 
        ' --- El margen de la segunda fila es igual a:  14 + 19 + 45 + 7 + 5 = 90
 
        ' --- Metemos los primeros 127 caracteres
 
        Sheets("Sheet3").Select
 
        If Len(Texto) > 127 Then     ' <-- Aqui
           Pos = 127                 ' <-- Aqui
           While Mid$(Texto, Pos, 1) <> " ": Pos = Pos - 1: Wend
           Cells(Fila_Dest, "A") = RTrim(Left$(Texto, Pos))
           Texto = Mid$(Texto, Pos + 1)
        Else
           Cells(Fila_Dest, "A") = RTrim(Texto)
           Texto = ""
        End If
 
        Fila_Dest = Fila_Dest + 1
 
        ' --- Si habia mas de 126 caracteres los vamos añadiendo
        '      de 37 en 36 para que quede alineado.
        '      37 = 127 - 90
 
        While Len(Texto) > 0
           If InStr(Texto, " ") = 0 Then
              Cells(Fila_Dest, "A") = Space(90) + RTrim(Texto)
              Fila_Dest = Fila_Dest + 1
              Texto = ""
           Else
              Pos = 37               ' <-- Aqui
              While Len(Texto) > 37 And Mid(Texto, Pos, 1) <> " " And Pos > 0: Pos = Pos - 1: Wend
              Cells(Fila_Dest, "A") = Space(90) + RTrim(Left(Texto, Pos))
              Fila_Dest = Fila_Dest + 1
              Texto = RTrim$(Mid$(Texto + " ", Pos + 1))
           End If
        Wend
 
        Sheets("Sheet2").Select
        Fila_Orig = Fila_Orig + 1
    Wend
    Sheets("Sheet3").Select: MsgBox "Fin Macro"
End Sub

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 27
Ha aumentado 1 puesto en Excel (en relación al último mes)
Gráfica de Excel

Como obtener este formato mediante una macro

Publicado por Victor (14 intervenciones) el 26/09/2018 21:55:47
Yo siento que este es el ultimo detalle que me falta para ya poderla probar en una infinidad de archivos (le adjunto de igual manera los 2 archivos que uso para ejecutar las macros) estan separadas las macros porque aun no las hago 1 sola macro (por la misma razon de que aun no esta bien pero vamos por muy buen camino)
El primer archivo que se llama MACRO BOM EL BUENO me genera hasta la parte que esta en la hoja numero tres en donde falta aplicar la macro que usted me ayudo a generar y aqui es donde
El archivo PRUEBA 2 _ BOM DE JDEWARDS macro NUEVA - 1B es el archivo que me ayudo a generar y es la macro que utilizo para correrla en el archive MACRO BOM EL BUENO

El detalle es que al momento de correr la macro de concatenar en el archivo MACRO BOM EL BUENO, si me hace todo el proceso bien solo que no se porque hay partes en donde los numeros me los pone pegados (como viene en la imagen 1 e imagen 2) son muy pocos en donde lo hace porque los demas si llevan el proceso de los 90 espacios + 37 caracteres.
La verdad ya le busque a ver que era lo que me generaba este problema, pero no encuentro algo en concreto me puede auxiliar con esta parte por favor esperemos que ya sea lo ultimo para por fin poder finalizar esta macro
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Como obtener este formato mediante una macro

Publicado por omar (3 intervenciones) el 26/09/2018 19:48:07
saludos, realize una aplicacion mobil para dar formato a ese tipo de archivos

ficheros txt

se puede usar para la pc enviando los datos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar