Excel - Problema al Guardar PDF multiples

 
Vista:
sin imagen de perfil
Val: 50
Ha aumentado su posición en 2 puestos en Excel (en relación al último mes)
Gráfica de Excel

Problema al Guardar PDF multiples

Publicado por Eduardo (19 intervenciones) el 29/03/2021 22:29:11
Buenas tardes tengo un problema con la macro debido a que no me esta borrando el cache de los valores al momento de guardar datos me deja el anterior y no el que estoy ingresando, dejo el ejemplo siguiente: Donde aparece el David Santos y no Leonila que es la que tiene el registro 1.

Error-al-guardar-archivos


Saludos y espero me puedan orientar con este tipo de casos.
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

Problema al Guardar PDF multiples

Publicado por Antoni Masana (2485 intervenciones) el 29/03/2021 22:57:58
Creo que te podemos ayudar.
Solo hace falta que nos pases una copia del libro, la macro y explique que pasos hay que seguir para ver el error.
En este caso que texto sale y cual debería salir y en que momento ocurre.
Ten en cuenta que el libro que envíes no debe contener información sensible, deben ser datos ficticios.
Para cumplir con la ley de protección de datos.

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: 50
Ha aumentado su posición en 2 puestos en Excel (en relación al último mes)
Gráfica de Excel

Problema al Guardar PDF multiples

Publicado por Eduardo (19 intervenciones) el 29/03/2021 23:15:35
Muchas gracias por la pronta respuesta.

El tema es que al correr la macro en la memoria se queda registrado el dato anterior y no el que esta ingresando al continuar, esto me refiero al valor de RegistroA en la macro y cuando lo guarda se queda con el mismo nombre de este valor.


Pasos a seguir para ejecutar la macro.

1. Ingresar a la hoja "Guardar PDF masivos"
2. Dar clic en el botón de de "Guardar PDF"
3. Ingresar la opción 2.
4. Introducir el ID inicial (esto de solo 5 registros que se tienen en el libro)
5. Introducir ID final
6. Elegir la carpeta destino de los archivos a guardar.

Y en este paso es donde los valores no corresponde el nombre del archivo, el valor de RegistroA que esta en el código no corresponde con el que se ingresa para guardar..
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

Problema al Guardar PDF multiples

Publicado por Antoni Masana (2485 intervenciones) el 30/03/2021 17:03:47
Primero la macro es un desastre, le he dado un poco de formato para poder leerla bien.
Y he cambiado unas cosas de sitio para que no se repitan

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
Sub Guardado_multiple_PDF()
    Dim RegistroA As String
    Dim Reporte As String
    Dim i As Integer
    Dim miArchivo As String
    Dim Ruta As String
    Dim intInicial As Integer
    Dim intFinal As Integer
    Dim intConsecutivo As Integer
    Dim srtTitulo As String
    Dim Elegir As Variant
 
    Application.ScreenUpdating = True
 
    srtTitulo = "Escuela de Servicios"
    intConsecutivo = ThisWorkbook.Sheets("CONSOLIDADO").Range("CONSECUTIVO").Value
    Reporte = ThisWorkbook.Sheets("Guardar PDF masivos").Range("NumTicket").Value
 
    ' ---&--- Destino del listado
 
    Elegir = InputBox("Elige la acción a ejecutar:" & vbNewLine & _
                      "1 = Imprimir" & vbNewLine & _
                      "2 = Guardar en PDF", srtTitulo)
 
    If Elegir <> 1 And Elegir <> 2 Then
        MsgBox "Debe elegir una opción correcta.", vbExclamation, srtTitulo
        Exit Sub
    End If
 
    ' ---&--- Intervalos
 
    intInicial = InputBox("Introduce el ID inicial", srtTitulo)
    intFinal = InputBox("Introduce el ID final", srtTitulo)
 
    If intFinal < intInicial Or intFinal > intConsecutivo Then
        MsgBox "Valida el ID final.", vbExclamation, srtTitulo
        Exit Sub
    End If
 
    ' ---&--- Imprimir
 
    If Elegir = 1 Then
        For i = intInicial To intFinal
            ThisWorkbook.Sheets("Guardar PDF masivos").Range("E4").Value = i
            MsgBox "Imprimiendo ID '" & i & "'. Presione Aceptar para continuar...", vbInformation, srtTitulo
        Next i
    End If
 
    ' ---&--- PDF
 
    If Elegir = 2 Then
        With Application.FileDialog(msoFileDialogFolderPicker)
            .InitialFileName = Application.DefaultFilePath & " \ "
            .Title = "Escuela de Servicios México - Seleccionar carpeta"
            .Show
            If .SelectedItems.Count <> 0 Then
                Ruta = .SelectedItems(1)
                For i = intInicial To intFinal
                    ThisWorkbook.Sheets("Guardar PDF masivos").Range("E4").Value = i
                    RegistroA = ThisWorkbook.Sheets("Guardar PDF masivos").Range("B4").Value
 
                    MsgBox "Guardando en PDF Evaluación-'" & i & "_" & RegistroA & _
                           ". Presione Aceptar para continuar...", _
                           vbInformation, "Escuela de Servicios México"
 
                    Application.ScreenUpdating = True
 
                    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
                                                    Filename:=Ruta & "\" & "Evaluación-" & i & " - " & RegistroA & ".pdf", _
                                                   Quality:=xlQualityStandard, _
                                                    IncludeDocProperties:=True, _
                                                    IgnorePrintAreas:=False, _
                                                    OpenAfterPublish:=False
                Next i
                Set doClip = Nothing
                Application.ScreenUpdating = False
            End If
        End With
    End If
    MsgBox "La ficha fue guardada satisfactoriamente", vbYes, _
           "los datos fueron agregados en la carpeta correspondiente"
End Sub

En la parte en negrita.
Primero tienes que asignar en valor en E4 y después recoger lo que hay en B4 porque no puedes recoger antes de sembrar.

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: 50
Ha aumentado su posición en 2 puestos en Excel (en relación al último mes)
Gráfica de Excel

Problema al Guardar PDF multiples

Publicado por Eduardo (19 intervenciones) el 30/03/2021 21:01:49
Muchas gracias por el apoyo @Antoni Masana ya corrió correctamente la Macro y los archivos se guardaron con los nombres correspondientes le agradezco nuevamente.
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
sin imagen de perfil
Val: 50
Ha aumentado su posición en 2 puestos en Excel (en relación al último mes)
Gráfica de Excel

Problema al Guardar PDF multiples

Publicado por Eduardo (19 intervenciones) el 05/04/2021 19:34:01
Nuevamente agradezco el apoyo por la pronta respuesta de mi problema, pero tengo un nuevo asunto; se puede trabajar sobre este o tengo que generar nuevamente la consulta.

Tengo este error al correr la macro para este mismo archivo pero le agregue para que envié correo con adjunto y la dirección si aparece en la búsqueda, además que si omito el adjunto si correo adecuadamente la macro.

Captura-error-de-envio-correo
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

Problema al Guardar PDF multiples

Publicado por Antoni Masana (2485 intervenciones) el 05/04/2021 23:17:47
Deberías subir el nuevo libro para ver donde falla 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
1
Comentar
sin imagen de perfil
Val: 50
Ha aumentado su posición en 2 puestos en Excel (en relación al último mes)
Gráfica de Excel

Problema al Guardar PDF multiples

Publicado por Eduardo (19 intervenciones) el 06/04/2021 01:22:54
Muchas gracias nuevamente por el apoyo, adjunto archivo y el proceso es:

Pasos a seguir para ejecutar la macro.

1. Ingresar a la hoja "Guardar PDF masivos"
2. Dar clic en el botón de de "Guardar PDF y envió por correo múltiple"
3. Ingresar la opción 2.
4. Introducir el ID inicial (esto de solo 5 registros que se tienen en el libro)
5. Introducir ID final
6. Elegir la carpeta destino de los archivos a guardar.
7. el proceso continua de acuerdo a la macro anterior pero al llamar la macro de envio por correo sucede lo descrito abajo.


Y en este paso es donde la variable enviodoc no agrega la ruta del archivo para el envió por correo, esto de acuerdo al error que había anexado en el comentario anterior.
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

Problema al Guardar PDF multiples

Publicado por Antoni Masana (2485 intervenciones) el 06/04/2021 15:22:26
Bien he probado la macro y veo que genera un fichero PDF y lo envía por correo, lo que no se si es el mis[bmo PDF o es otro.

Revisa las líneas en negrita.

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
Sub Guardado_multiple_PDF()
    Application.ScreenUpdating = True
 
    srtTitulo = "Escuela de Servicios"
    intConsecutivo = ThisWorkbook.Sheets("CONSOLIDADO").Range("CONSECUTIVO").Value
 
    ' ---&--- Destino del listado
 
    Elegir = InputBox("Elige la acción a ejecutar:" & vbNewLine & _
                      "1 = Imprimir" & vbNewLine & _
                      "2 = Guardar en PDF", srtTitulo)
 
    If Elegir <> 1 And Elegir <> 2 Then
        MsgBox "Debe elegir una opción correcta.", vbExclamation, srtTitulo
        Exit Sub
    End If
 
    ' ---&--- Intervalos
 
    intInicial = InputBox("Introduce el ID inicial", srtTitulo)
    intFinal = InputBox("Introduce el ID final", srtTitulo)
 
    If intFinal < intInicial Or intFinal > intConsecutivo Then
        MsgBox "Valida el ID final.", vbExclamation, srtTitulo
       Exit Sub
    End If
    Application.ScreenUpdating = True
 
    ' ---&--- Imprimir
 
    If Elegir = 1 Then
       For i = intInicial To intFinal
           ThisWorkbook.Sheets("Guardar PDF masivos").Range("E4").Value = i
           MsgBox "Imprimiendo ID '" & i & "'. Presione Aceptar para continuar...", vbInformation, srtTitulo
           'ThisWorkbook.ActiveSheet.PrintOut Copies:=1 "Esto es cuando se requiere realizar copia del dcoumento"
        Next i
    End If
 
    ' ---&--- PDF
 
    If Elegir = 2 Then
        With Application.FileDialog(msoFileDialogFolderPicker)
           .InitialFileName = Application.DefaultFilePath & " \ "
           .Title = "Escuela de Servicios México - Seleccionar carpeta"
           .Show
           If .SelectedItems.Count <> 0 Then
               Ruta = .SelectedItems(1)
               For i = intInicial To intFinal
                   ThisWorkbook.Sheets("Guardar PDF masivos").Range("E4").Value = i
                   RegistroA = ThisWorkbook.Sheets("Guardar PDF masivos").Range("B4").Value
                   Reporte = ThisWorkbook.Sheets("Guardar PDF masivos").Range("NumTicket").Value
                   NombreHoja = "CONSOLIDADO FICHAS"
 
                   Range("M12") = "Evaluación-" & i & " - " & Reporte & " - " & RegistroA & ".pdf"
 
                   ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
                               Filename:=Ruta & "\" & "Evaluación-" & i & " - " & Reporte & " - " & RegistroA & ".pdf", _
                               Quality:=xlQualityStandard, _
                               IncludeDocProperties:=True, _
                               IgnorePrintAreas:=False, _
                               OpenAfterPublish:=False
 
                    ' ---&--- Registro de direccion PDF
 
                    Application.ScreenUpdating = True
                    With ThisWorkbook.Sheets(NombreHoja)
                        Set HojaDestino = ThisWorkbook.Sheets(NombreHoja).Range("A1").CurrentRegion
                        NuevaFila = HojaDestino.Rows.Count + 1
                        .Cells(NuevaFila, 1).Value = Reporte
                        .Cells(NuevaFila, 2).Value = Date
                        .Cells(NuevaFila, 3).Value = Range("PC").Value
                        '''''''''''''''''''''''''''''''''''''''''''''''
                        .Cells(NuevaFila, 4).Value = Ruta & "\" & "Evaluación-" & i & "-" & Reporte & "-" & RegistroA & ".pdf"
                        .Cells(NuevaFila, 5).Value = Range("Reg").Value
                    End With
                    Call EnviarEmailmasivo
                Next i
                Application.ScreenUpdating = False
            End If
        End With
    End If
    MsgBox "La fichas fueron guardadas satisfactoriamente", vbYes, _
           "La informacion se agrego en la carpeta correspondiente"
End Sub

Por si no lo ves claro:

Creas el fichero PDF:
1
"Evaluación-" & i & " - " & Reporte & " - " & RegistroA & ".pdf"
Intentas adjuntar el fichero:
1
"Evaluación-" & i & "-" & Reporte & "-" & RegistroA & ".pdf"

Ves una sutil diferencia.

Saludos.
\\//_
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

Problema al Guardar PDF multiples

Publicado por Antoni Masana (2485 intervenciones) el 06/04/2021 15:44:55
Como mejor solución he encontrado cambiar el nombre al crear el PDF. (Sin espacios)

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
Sub Guardado_multiple_PDF()
    ...
                   ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
                               Filename:=Ruta & "\" & "Evaluación-" & i & "-" & Reporte & "-" & RegistroA & ".pdf", _
                               Quality:=xlQualityStandard, _
                               IncludeDocProperties:=True, _
                               IgnorePrintAreas:=False, _
                               OpenAfterPublish:=False
 
                    ' ---&--- Registro de direccion PDF
 
                    Application.ScreenUpdating = True
                    With ThisWorkbook.Sheets(NombreHoja)
                        Set HojaDestino = ThisWorkbook.Sheets(NombreHoja).Range("A1").CurrentRegion
                        NuevaFila = HojaDestino.Rows.Count + 1
                        .Cells(NuevaFila, 1).Value = Reporte
                        .Cells(NuevaFila, 2).Value = Date
                        .Cells(NuevaFila, 3).Value = Range("PC").Value
                        '''''''''''''''''''''''''''''''''''''''''''''''
                        .Cells(NuevaFila, 4).Value = Ruta & "\" & "Evaluación-" & i & "-" & Reporte & "-" & RegistroA & ".pdf"
                        .Cells(NuevaFila, 5).Value = Range("Reg").Value
                    End With
                    Call EnviarEmailmasivo
                Next i
                Application.ScreenUpdating = False
            End If
        End With
    End If
    MsgBox "La fichas fueron guardadas satisfactoriamente", vbYes, _
           "La informacion se agrego en la carpeta correspondiente"
End Sub

Esta fila no es la que busca el envio de correo:
1
.Cells(NuevaFila, 4).Value = Ruta & "\" & "Evaluación-" & i & "-" & Reporte & "-" & RegistroA & ".pdf"

Donde va a buscar el correo es en la celda N2 y es el resultado de una fórmula.

saludos.
\\//_
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
sin imagen de perfil
Val: 50
Ha aumentado su posición en 2 puestos en Excel (en relación al último mes)
Gráfica de Excel

Problema al Guardar PDF multiples

Publicado por Eduardo (19 intervenciones) el 10/04/2021 02:07:24
Muchas gracias nuevamente por el apoyo, veo que son temas muy pequeños pero que impactan con la macro la verdad me siento un poco molesto conmigo por que no puede ser que temas tan básicos o simples se me escapen de las manos además veo que tiene muy amplio conocimiento en Excel, tengo otra consulta pero es sobre una formula para este mismo archivo el cual estoy generando pero como lo he construido poco a poco y solo cuando tengo algo de tiempo desarrollo la macro.

Nota: No se si por este mismo foro pueda realizar esta consulta o genero otra.
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

Problema al Guardar PDF multiples

Publicado por Antoni Masana (2485 intervenciones) el 10/04/2021 12:12:10
Para un nuevo tema mejor abrir otro consulta.
De esta forma si alguien tiene el mismo problema es más fácil que la vea.

Por otro lado no son temas tan básicos ni tan simples.
Yo mismo hace algo más de 20 años no tenia ni idea de como funcionaba una macro.
Vale que 15 años de experiencia en programación ayudan mucho, pero todo es cuestión de practica.

Saludos.
\\//_
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