Macro para dar click en hypervinculo desde archivo pdf
En esta oportunidad requiero de tu ayuda para ejecutar la siguiente tarea.
Una macro que he estado desarrollando:
1. Selecciona una serie de números de 23 dígitos.
2. Abre un archivo PDF y busca uno por uno los números en el documento que siempre están ubicados en la primera columna.
3. Utilizando la sentencia de "SendKeys", llega hasta el número desado.
Declare Function CloseClipboard Lib "user32" () As Long
Declare Function EmptyClipboard Lib "user32" () As Long
Declare Function OpenClipboard Lib "user32" (ByVal hwnd As Long) As Long
Dim b As Worksheet, a As Worksheet, Celda As Range
Sub Actualizar_Estados()
On Error Resume Next
Set b = Sheets("Hoja2")
Set a = Sheets("Hoja3")
ReturnValue = Shell("C:\Archivos de programa\Adobe\Reader 9.0\Reader\AcroRd32.exe F:\IMPORTAR WEB\Nueva carpeta\estado 064 del 15 de septiembre de 2017.pdf", vbNormalNoFocus) ' Estas son las rutas en mi computador
' tanto del Acrobat como del archivo a trabajar.
AppActivate ReturnValue ' Activa la Calculadora.
Application.Wait Now + TimeValue("0:00:01") ' hago una pausa
a.Select
a.Range("A2:A9").Select
For Each Celda In Selection
SendKeys "^f" ' lanzo la secuencia ''buscar'' mediante mayúsculas (+), control (^), y la letra F
Application.Wait Now + TimeValue("0:00:02") ' hago una pausa
SendKeys Celda.Value ' lanzo la búsqueda de la parte del fichero 200911111
' Application.Wait Now + TimeValue("0:00:02") ' hago una pausa
SendKeys "{ENTER}" ' lanzo la tecla intro con la cadena {ENTER}
Application.Wait Now + TimeValue("0:00:02") ' hago una pausa
Call ClearClipboard
SendKeys "^(c)"
Application.Wait Now + TimeValue("0:00:02") ' hago una pausa
Windows(ThisWorkbook.Name).Activate 'activa la ventana
b.Activate
u = b.Range("A" & Rows.Count).End(xlUp).Row + 1 'indice o num de fila en blanco
b.Cells(u, 1).Select 'establece la celda donde se pegará la información
Selection.NumberFormat = "@"
ActiveSheet.Paste
Application.CutCopyMode = False
Next Celda
SendKeys "%{F4}", True
End Sub
Sub ClearClipboard()
OpenClipboard 0&
EmptyClipboard
CloseClipboard
End SubNecesito es que el listado de números de 23 dígitos previsto de un hypervínculo me descargue desde la red otro archivo pdf que es el que necesito obtener.
Quedo pendiente de cualquier duda que tengas y la respectiva ayuda que me puedas brindar.
Saludos.
Pruebas.xlsm
Estado 064 del 15 de septiembre de 2017.pdf