Есть два способа сделать это.
Во-первых, вам нужно знать, что установлено в вашей системе.
Acrobat отличается от Acrobat или Adobe Reader.
Вот код, если у вас есть только Acrobat Reader. Вы используете функцию Shell.
Затем для копирования содержимого PDF вы используете SendKeys.
Вид грязного кода и не на 100% надежный, но я могу сказать, что он все еще работает.
Sub Get_Pdf()
Dim XLName As String, PDFPath As String, READERPath As String
Dim OpenPDF, sh As Worksheet
XLName = ThisWorkbook.Name
Set sh = Thisworkbook.Sheets(1)
PDFPath = Application.GetOpenFilename(filefilter:="PDF file (*.pdf), *.pdf")
If UCase(PDFPath) = "FALSE" Then Exit Sub
'~~> Below path differs depending Adobe version and installation path
READERPath = "C:\Program Files\Adobe\Reader 11.0\Reader\AcroRd32.exe "
Shell READERPath & PDFPath, vbNormalFocus: DoEvents
Application.Wait Now + TimeValue("00:00:2")
SendKeys "^a", True
Application.Wait Now + TimeValue("00:00:2")
SendKeys "^c"
Application.Wait Now + TimeValue("00:00:2")
Windows(XLName).Activate
sh.Paste sh.Range("A1")
SendKeys "%{F4}", True
End Sub
Если, однако, у вас установлен Acrobat, обратитесь к этой записи и проверьте ссылку на правильный ответ.
По ссылке было размещено обновление, которое касается открытия PDF, даже если установлен только ADOBE Reader.