Le fichier à télécharger contient:
Les principales caractéristiques:
- Le Module_GetPDFText
- Le Module_Test qui donnent un exemple d'utilisation
Les principales caractéristiques:
- La Fonction GetPDFText() retourne le texte d'un fichier PDF reçu en argument ou écrit un fichier texte cible.
Si un erreur se produit, la valeur de retour est un numéro d'erreur.
- La fonction GetPDFTextError() permet de traduire un numéro d'erreur en texte.
- Placer le Module_GetPDFText dans la projet VBA.
- Utiliser les fonctions citées ci-dessus dans le code appelant.
- La fonction utilise un navigateur Web pour afficher le fichier PDF et en récupérer le texte.
Il s'agit dans l'ordre de priorité de recherche de Edge, Chrome et Firefox.
- La processus de récupération est assez trivial sur le principe et consiste à récupérer le texte sur l'affichage d'un navigateur Web.
Ce qui est moins trivial c'est la gestion des temps d'attente en fonction de la puissance CPU du PC et de la taille du fichier PDF car rien ne permet de savoir de manière déterministe quand le fichier PDF est effectivement chargé par le navigateur Web.
Le code a été testé dans différentes configurations Windows et de puissance CPU mais il est possible que pour des cas particuliers (accès au fichier très lent, PC en surcharge CPU, ...) il ne donne pas le résultat escompté. En cas de difficultés, utiliser la ressource:
VBA - Récuperer le texte d'un fichier PDF avec pdftotext.exe du Xpdf open source project
Le fichier à télécharger contient: Le Module_GetPDFText Le Module_InstallPdfToText qui permet l'installation de pdftotext.exe sur le PC. Le Module_Test qui donnent un exemple d'utilisation Note: Voir toutes mes ressources ->...excel-downloads.com
- A noter que le XLDNaute @patricktoulon a apporté une contribution positive à l'élaboration de cette macro.
- V1 - Initiale.
- V2 - Sécurise la position du curseur dans le document pour le clic souris nécessaire pour Chrome.
- V3 - Remplace GetActiveWindow par GetForeGroundWindow pour avoir le Handle du navigateur Internet et sécuriser les Ctrl+A et Ctrl+C.
- V4 - Ajout de l'option d'une sortie du texte sur un fichier dont le nom est un paramètre optionnel de la fonction.