Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 VBA - Récupérer le texte d'un fichier PDF

Dudu2

XLDnaute Barbatruc
Bonjour,

Y a-t-il un moyen de chercher et récupérer du texte directement dans un PDF sans avoir à l'ouvrir / tout sélectionner / copier dans le clipboard texte ?

Merci pour toute information.

Edit: Titre modifié pour mieux refléter la solution de cette longue discussion.
 
Dernière édition:

patricktoulon

XLDnaute Barbatruc
resultats sur firefox
en ajoutant du temps d'attente sinon ca ne marche pas
le pdf de 3mega

pour le 62 mega les attente ne sont pas suffisantes même en les augmentant j'ai pas pu
conclusion
les sleeps ne sont pas encore suffisament syncro pour dire que la gestion d'attente est cohérente
 

patricktoulon

XLDnaute Barbatruc
avec ma version et mode firefox
pour le pdf de 3 mega @ noter que l'on récupère le text complet du pdf


pour le pdf de 62 mega

alors oui des fois la fenêtre est prete et il tape pas de suite
oui ca clignotte
mais j'ai mes pdfs complets et pas de ratés
 

Dudu2

XLDnaute Barbatruc
Je veux bien croire que pour que ça passe chez toi il faut augmenter le temps d'attente qui est à 15 secondes dans le code et qui devrait être passé à plus pour ta 35cv. J'ai d'ailleurs commencé à le rendre dynamique mais, je dois faire des essais avec différentes tailles pour savoir comment le calculer. Je m'y attèle.

Quant à...
donc 17 seconde pour plus de 18 000 ligne pour moi et 11 seconde pour une ligne chez toi
ya pas photo
Je ne sais pas ce qui se passe chez toi, car pour un petit fichier, chez moi, on a:
- l'attente de la fenêtre 0.5 seconde
- l'attente de l'affichage 1.0 seconde
Soit 1.5 secondes d'attente programmée pour 1.66 secondes de temps total, soit peanuts pour récupérer le PDF.


Envoie ta version du code pour voir ce qui est tellement plus performant pour 1 ligne.
 

Dudu2

XLDnaute Barbatruc
En fait ça dépend pas seulement de la taille du PDF mais de son contenu.
Sur le gros fichier auquel j'ai supprimé progressivement des pages j'obtiens ça chez moi.

Donc ce n'est pas non plus linéaire à supposer que ces fichiers soient représentatifs.
Par sécurité pour des machines moins puissantes je vais faire:
01 - 40 Mo - 10 secondes
Et 5 secondes de plus par tranche de 10 Mo.
 

Dudu2

XLDnaute Barbatruc
Je ne sais pas quoi te dire. Sur mon PC j'ai fait des tests en boucle x 10 , petit et gros fichier, plusieurs fois, Firefox et Chrome et j'ai 100% de réussite. D'ailleurs depuis la version qui attend la fin du Browser après le F4, je n'ai plus jamais eu d'erreur.

Il y a par contre une erreur dans le module de test qui affiche le résultat avec un .Paste qui ne représente pas la chaine retournée. J'ai corrigé cet affichage dans le fichier joint.

Essaie de passer le Sleep 1000 initial à Sleep 1500 dans un premier temps et Sleep 2000 ensuite.
Cette temporisation conditionne l'envoi de clic souris sur Chrome uniquement. Ce Chrome est bugué car en menu contextuel il y a bien Ctrl C pour copier. Mais sans ce clic souris ça ne fonctionne pas.
 

Pièces jointes

  • Classeur1.xlsm
    43.5 KB · Affichages: 0

Dudu2

XLDnaute Barbatruc
Les retours de Chrome, Firefox et Edge sont différents en nombre de caractères et nombre de lignes (nombre de vbLf). Mais les premières et dernières lignes sont identiques (à un bémol prêt pour Edge).
Ça laisse supposer que le retour du texte PDF est complet dans les 3 cas.

Chrome
91 essais
7,33 secondes / 25 secondes max
956734 caractères, 19260 lignes
1ère ligne© 2013 Samsung Electronics Co., Ltd. All rights reserved. BN68-04779D-04
Dernière ligne• Kasutage teleri funktsioone, mis on mõeldud järelkujutisi ja ekraani sissepõlemist vältima. Lisateavet vt e-Manualist.
Firefox
101 essais
7,72 secondes / 25 secondes max
936358 caractères, 18902 lignes
1ère ligne© 2013 Samsung Electronics Co., Ltd. All rights reserved. BN68-04779D-04
Dernière ligne• Kasutage teleri funktsioone, mis on mõeldud järelkujutisi ja ekraani sissepõlemist vältima. Lisateavet vt e-Manualist.
Edge
82 essais
7,49 secondes / 25 secondes max
986180 caractères, 19357 lignes
1ère ligne© 2013 Samsung Electronics Co., Ltd. All rights reserved. BN68-04779D-04
Avant dernière ligne• Kasutage teleri funktsioone, mis on mõeldud järelkujutisi ja ekraani sissepõlemist vältima. Lisateavet vt e-Manualist.
Dernière ligne[UF6470-XH]BN68-04779D-04L16.indb 25 2013-07-26 4:48:16
 

patricktoulon

XLDnaute Barbatruc
re
ma fois moi non plus je ne sais que dire
avec ma version on est un peu plus long avec firefox mais j'ai un echec sur X.....
bon des fois ca clignote
sur le petit 2/5 essais
sur le gros 4/11 essais
mais au final je suis a 2/4 secondes pour le petit et 15/17 pour le gros
plus de 18900 lignes

en le rallentissant fortement je pense avoir pigé le truc
plus il est gros plus après le ctrl+a+c il faut sleeper

faut voir ça un peu comme si on rempli une bouteille avec un debit régulier
d'autre part aussi j'ai remarquer que si firefox etait deja ouvert sur une page web il reduit le temps par deux

bref a suivre
 

Dudu2

XLDnaute Barbatruc
Bonjour @patricktoulon,
J'ai testé sur mon vieux Laptop ASUS F301A qui est la 2cv des PC sous Windows 10 mais qui tourne bien.

Paradoxalement ça ne marche pas avec Firefox qui me renvoie toujours 2 caractères sans que je sache pourquoi. Je n'ai donc conservé que Edge et Chrome.

J'ai dû augmenter le délai initial de 1000 à 2500 ms pour réussir les tests sur ce PC.
Il faudrait que je puisse déterminer avant la puissance du PC. T'as ça dans tes cartons ?

A essayer chez toi.
 

Pièces jointes

  • Classeur1.xlsm
    40 KB · Affichages: 0

patricktoulon

XLDnaute Barbatruc
moi non plus ca ne fonctionne plus sur firefox
hors c'est le nav que j'utilise
je serai toi je me concentrerais sur firefox et edge qui sont les navigateurs courants les plus utilisés

pour le reste je suppose que je doit bien avoir quelque chose dans mes vielles clés USB il faudrait que je cherche
voir si avec WMI on peut pas chopper ces données
mais bon si ca continue , on va nous prendre pour des cousins à Lionel
 

Dudu2

XLDnaute Barbatruc
, c'est sûr que de toutes façons cette affaire est un bidouillage approximatif et reste une usine à gaz.

Sur les installations des dernières années on trouve l'envahissant Edge. Tanpis si je n'arrive pas à faire fonctionner Firefox.
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…