Copier PDF vers Excel

skeul41

XLDnaute Nouveau
Bonjour,

J'essaie de copier le contenu de la 2ème page d'un pdf vers une feuille Excel à l'aide de la commande SendKeys, mais j'ai de la misère à faire fonctionner les raccourcis clavier.

Voila le code

AppActivate Shell("C:\Program Files\Adobe\Reader\AcroRd32.exe C:\test.pdf", vbNormalFocus)
SendKeys "{RIGHT}"
SendKeys "^A"
SendKeys "^C"

Le SendKeys Right marche parfaitemant, mais pour le reste rien ne se passe.

Quelqu'un aurait-il une solution ?

Merci d'avance.
 

Catrice

XLDnaute Barbatruc
Re : Copier PDF vers Excel

Bonsoir,

Chez moi, ceci fontionne :
Code:
Sub test()
Application.OnTime Now + TimeValue("00:00:03"), "toto"
chemin = ThisWorkbook.Path
Shell "C:\Program Files\Adobe\Acrobat 7.0\Reader\AcroRd32.exe " & chemin & "\test.pdf", vbNormalFocus
'SendKeys "{RIGHT}" 'Ne sert à rien puisque CTRL+A selectionne tout le document
SendKeys "^a"
SendKeys "^c"
End Sub
Sub toto()
ActiveSheet.Paste Destination:=ActiveSheet.Range("B2")
End Sub

Mais copie tout le document
 

skeul41

XLDnaute Nouveau
Re : Copier PDF vers Excel

Bon ben je suis reparti de ton exemple, et je suis arrivé à quelquechose qui fonctionne.

Code:
Shell "C:\Program Files\Adobe\Reader\AcroRd32.exe C:\test.pdf", vbNormalFocus
SendKeys "{RIGHT}"
SendKeys "^a"
SendKeys "^c"
ActiveSheet.Paste Destination:=ActiveSheet.Range("A1")


Merci bien !
 

Catrice

XLDnaute Barbatruc
Re : Copier PDF vers Excel

Bonsoir,

Tant mieux si ça fontionne mais je ne vois pas comment ça peut fontionner ...
Les SendKeys sont executés apres les autres codes.
Donc normalement apres le Paste :confused:
C'est pour ça que j'ai mis un OnTime.

Es-tu sur que ce n'est pas ton PressePapier déjà plein qui se collait ?
De plus chez moi tout le document se selectionne.
Tu arrives à ne copier que la page 2 ?
Si oui, ça m'interesse...
 
Dernière édition:

skeul41

XLDnaute Nouveau
Re : Copier PDF vers Excel

Bon ben avec le OnTime en plus, ça a l'air bien correct.

Code:
sFichier = Application.GetOpenFilename(", *.pdf", Title:="Sélectionner le .pdf à importer pour " & section)
    sProg = "C:\Program Files\Adobe\Reader\AcroRd32.exe"
    
    Shell sProg & " " & sFichier, vbNormalFocus
    Application.OnTime Now + TimeValue("00:00:03"), "MiseEnPageDetail"
    
    SendKeys "{RIGHT}"
    SendKeys "^a"
    SendKeys "^c"
    SendKeys "%{F4}"

avec MiseEnPageDetail qui fait le Paste dans une feuille d'Excel.
 

Discussions similaires

Réponses
11
Affichages
3 K

Statistiques des forums

Discussions
312 388
Messages
2 087 879
Membres
103 672
dernier inscrit
ammarhouichi