¿Problema con una macro que realizaste de pasar documentos de excel a pdf?

Lo que pasa es que en la macro que realizaste no me pasa todos los datos de la BD de excel al pdf si no solamente me pasa en todos los campos el valor de la celda que puse al final esta es la macro

Sub PasarDatosaPdf()
    Application.DisplayAlerts = False
    Application.ScreenUpdating = False
    Set h2 = Sheets("Hoja2") 'contador
    '
    celdas = Array("A2", "B2", "C2", "D2", "E2", "F2", "G2")
    '
    ruta = "E:\jocampo\DOCUMENTOS\"
    nomb = "Forma-37"
    ActiveWorkbook.FollowHyperlink ruta & nomb & ".pdf"
    '
    Application.Wait Now + TimeValue("00:00:03")
    For i = LBound(celdas) To UBound(celdas)
        DoEvents
        SendKeys "{TAB}", True
        DoEvents
        h2.Range(celdas(i)).Copy
        DoEvents
        SendKeys "^v", True
        DoEvents
    Next
    '
    Application.ScreenUpdating = True
    MsgBox "Se enviaron los datos al pdf"
End Sub

funciona de abrir el pdf y todo pero no me copia todos los datos solo me pone el ultimo por ejemplo el rango de celdas de abajo solo me copia los datos G2 y no los de A2-F2 me ayudarias ?

 celdas = Array("A2", "B2", "C2", "D2", "E2", "F2", "G2")

1 Respuesta

Respuesta
5

Como se ha comentado en algunas oportunidades, el método "SendKeys" es algo inestable (además de tener un "bug") y cuando se trata de interactura con otras aplicaciones, no necesariamente se dan los resultados esperado. Yo, para este caso, sugiero cambiar la parte del "For" de este modo:

 For i = LBound(celdas) To UBound(celdas)
        SendKeys "{TAB}"
        SendKeys h2.Range(celdas(i)).Value, True
        Application.Wait (Now + TimeValue("0:00:01"))
    Next

Intenta así y comentas. Salu2

Abraham Valencia

Agradezco tu resolución me funciono bien una pregunta como puedo a esta misma macro agrearle que después de llenar guarde el archivo

Ya que estás trabajando con "SendKeys", quizá es cosa de ver la combinación de teclas e irlas activando, tipo "Alt+a" y así las correspondientes, pero depende del programa que te abre tu archivo.

Yo particularmente no uso "SendKeys" en casos como ese, prefiero trabajar con el objeto "Acrobat", pero no es tan simple por si acaso:

https://1drv.ms/u/s!ApkTgtnWCTgAi0dLgwu3m3fouY30 

Salu2

Abraham Valencia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas