En préambule, je tiens à mentionner si je n'avais pas trouvé ce sujet intéressant à des fins pédagogiques,
il n'aurait pas mérité d'y répondre telle la problématique exposée et d'un investissement relatif de la part du demandeur …
A ton prochain sujet idate dans la même veine, ne m'en veux pas car je n'y répondrai tout simplement pas.
Résumé de la problématique (ce n'est pas que pour toi idate, cela servira à d'autres) :
à partir d'un fichier pdf composée de trois colonnes, les récupérer dans une feuille de calcul d'Excel.
Le Copier / Coller fonctionne mais l'ordre des colonnes n'est pas toujours respecté :
il peut manquer la marque (Make) ou la famille (Type), dû à la conception de ce fichier pdf …
Solution :
au lieu de travailler à partir d'une feuille mal fichue après le
Copier / Coller, autant travailler directement en mémoire
en récupérant le contenu du Presse-Papiers Office juste après le
Copier du document pdf …
Afin que la procédure soit la plus rapide possible,
utiliser des variables tableau
(excellent tutoriel à lire, bien plus efficace qu'une vague recherche sur le net et autres
Copier / Coller
que de toute manière vous n'arriveriez point à adapter sans suivre un tel tutoriel !) …
Que les données soient importées d'un fichier texte ou récupérées à partir du Presse - Papiers,
c'est la même méthode afin de les traiter rapidement !
Il faut juste via un éditeur de fichier par exemple repérer le séparateur de fin de ligne ainsi que celui entre les données,
dans ce cas #13 & #10 pour la fin d'une ligne (
vbCrLf) et l'espace entre les données …
Procédure pour copier les données dans le fichier pdf source :
- à l'ouverture du document pdf dans Acrobat Reader (version 11.0.3),
désactiver le Mode tactile, l'icône de la main ne doit plus être grisée …
- Augmenter le zoom (200%) car le document est un peu petit …
- Sur le document, clic droit et cocher Sélection.
- Placer le curseur sur le début de la zone à copier (page n°31, donc devant @SAT) …
- Descendre en bas de la page n°62 puis à la fin de la zone à copier, juste après 1726 de la marque ZX, MàJ Clic (ou Shift Clic),
tout le bloc à travers les pages est surligné, enfin si la manipulation est réussie …
- Via le menu Edition, Copier.
Cela peut prendre quatre secondes, mais les données se trouvent ensuite dans le Presse - Papiers.
Côté code, hormis la récupération des données du Presse - Papiers, fonctionnalité présente dès l'insertion d'un
UserForm,
mais pouvant être activée sans cela en activant sa référence, j'affirme que pour l'essentiel de la logique,
c'est d'un niveau de programmation de débutant car il suffit de s'en donner la peine, d'avoir une pensée organisée et structurée …
Si ce n'est pas le cas, mieux vaut abandonner alors la programmation et ne pas demander à autrui de le faire à votre place !
De plus, je ne commente pas à dessein ce code car si comprendre vous voulez, les manches vous retrousser vous devez ‼
Pour une instruction en particulier, ne pas oublier la touche :f1: ‼
Et pas d'excuse pour ceux n'ayant soit disant pas l'aide d'installée, une p'tite recherche sur le site MSDN via :google2: ‼
Sans oublier l'excellent tutoriel déjà mentionné,
et du reste en profiter pour en consulter d'autres sur ce site ainsi que les autres pépites de la :faq: ‼