Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[VBA] récupérer du texte dans un fichier pdf ?

1 réponse
Avatar
artis31
Bonjour,

Je dois récupérer la totalité d'un texte d'un fichier pdf afin d'extraire
ensuite certaines données de texte... quelqu'un aurait-il une solution ?

Pour l'instant j'ouvre mon fichier pdf, je fais "sélectionner tout" ensuite
je fais un coller dans une feuille excel et je lance ma macro VBA de
récupération des données...

Ce la passait tant que je n'avais qu'un seul pdf de temps en temps, mais là
j'en ai une cinquantaine à traiter et je vais en avoir plusieurs par jours
d'ici peu...

@+

1 réponse

Avatar
docm
Bonjour.

Tu peux automatiser l'ouverture du fichier PDF ainsi que le Copier-Coller de
la façon suivante:

Private Declare Function ShellExecute Lib "shell32.dll" _
Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, _
ByVal lpFile As String, ByVal lpParameters As String, _
ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Sub Extraire_Texte_de_Pdf()

URL = "C:mes documentsGazel_no22.pdf" 'Adapter à votre fichier
'Ouvrir le fichier pdf avec le programme approprié
ShellExecute 0&, vbNullString, URL, vbNullString, _
vbNullString, vbNormalFocus

'Attendre 2 secondes
Application.Wait (Now + TimeValue("0:00:02"))

NomDeLafenetre = "Acrobat Reader"
AppActivate NomDeLafenetre 'Donner le focus à Acrobat Reader
SendKeys "^{a}" 'Sélectionner tout avec CTRL-A
AppActivate NomDeLafenetre
SendKeys "^{c}" 'Copier avec CTRL-C

'Attendre 2 secondes
Application.Wait (Now + TimeValue("0:00:02"))

AppActivate "Microsoft Excel" 'Redonner le focus à Excel

Sheets("Feuil1").Select
Sheets("Feuil1").Range("A1").Select
ActiveSheet.Paste

End Sub

Amicalement,
DocM

"artis31" wrote in message
news:#
Bonjour,

Je dois récupérer la totalité d'un texte d'un fichier pdf afin d'extraire
ensuite certaines données de texte... quelqu'un aurait-il une solution ?

Pour l'instant j'ouvre mon fichier pdf, je fais "sélectionner tout"
ensuite

je fais un coller dans une feuille excel et je lance ma macro VBA de
récupération des données...

Ce la passait tant que je n'avais qu'un seul pdf de temps en temps, mais


j'en ai une cinquantaine à traiter et je vais en avoir plusieurs par jours
d'ici peu...

@+