Importer des données de PDF vers Excel via Power Query

La tâche de transférer des données d'une feuille de calcul dans un fichier PDF vers une feuille Microsoft Excel est toujours "amusante". Surtout si vous n'avez pas de logiciel de reconnaissance coûteux comme FineReader ou quelque chose comme ça. La copie directe ne mène généralement à rien de bon, car. après avoir collé les données copiées sur la feuille, elles seront très probablement "collées" dans une seule colonne. Il faudra donc les séparer minutieusement à l'aide d'un outil Texte par colonnes de l'onglet Données (Données - Texte vers colonnes).

Et bien sûr, la copie n'est possible que pour les fichiers PDF contenant une couche de texte, c'est-à-dire avec un document qui vient d'être numérisé du papier au format PDF, cela ne fonctionnera en principe pas.

Mais ce n'est pas si triste, vraiment 🙂

Si vous avez Office 2013 ou 2016, alors en quelques minutes, sans programmes supplémentaires, il est tout à fait possible de transférer des données de PDF vers Microsoft Excel. Et Word et Power Query nous y aideront.

Par exemple, prenons ce rapport PDF avec un tas de textes, formules et tableaux du site Web de la Commission économique pour l'Europe :

Importer des données de PDF vers Excel via Power Query

… et essayez d'en sortir dans Excel, dites le premier tableau :

Importer des données de PDF vers Excel via Power Query

Allons-y!

Étape 1. Ouvrir le PDF dans Word

Pour une raison quelconque, peu de gens le savent, mais depuis 2013, Microsoft Word a appris à ouvrir et à reconnaître les fichiers PDF (même ceux numérisés, c'est-à-dire sans couche de texte !). Cela se fait de manière tout à fait standard : ouvrez Word, cliquez sur Fichier – Ouvrir (Fichier — Ouvrir) et spécifiez le format PDF dans la liste déroulante dans le coin inférieur droit de la fenêtre.

Sélectionnez ensuite le fichier PDF dont nous avons besoin et cliquez sur Ouvert (Ouvert). Word nous dit qu'il va exécuter l'OCR sur ce document en texte :

Importer des données de PDF vers Excel via Power Query

Nous sommes d'accord et dans quelques secondes nous verrons notre PDF ouvert pour édition déjà dans Word :

Importer des données de PDF vers Excel via Power Query

Bien sûr, la conception, les styles, les polices, les en-têtes et les pieds de page, etc. s'envoleront partiellement du document, mais ce n'est pas important pour nous - nous n'avons besoin que des données des tableaux. En principe, à ce stade, il est déjà tentant de copier simplement le tableau du document reconnu dans Word et de le coller simplement dans Excel. Parfois, cela fonctionne, mais le plus souvent, cela conduit à toutes sortes de distorsions de données - par exemple, les nombres peuvent se transformer en dates ou rester du texte, comme dans notre cas, parce que. PDF utilise des non-séparateurs :

Importer des données de PDF vers Excel via Power Query

Alors ne lésinons pas, mais rendons tout un peu plus compliqué, mais bon.

Étape 2 : Enregistrer le document en tant que page Web

Pour ensuite charger les données reçues dans Excel (via Power Query), notre document dans Word doit être enregistré au format page web – ce format est, dans ce cas, une sorte de dénominateur commun entre Word et Excel.

Pour cela, rendez-vous dans le menu Fichier - Enregistrer sous (Fichier — Enregistrer sous) ou appuyez sur la touche F12 sur le clavier et dans la fenêtre qui s'ouvre, sélectionnez le type de fichier Page Web dans un seul fichier (Page Web — Fichier unique):

Importer des données de PDF vers Excel via Power Query

Après l'enregistrement, vous devriez obtenir un fichier avec l'extension mhtml (si vous voyez des extensions de fichier dans l'Explorateur).

Étape 3. Téléchargement du fichier vers Excel via Power Query

Vous pouvez ouvrir directement le fichier MHTML créé dans Excel, mais nous obtiendrons, d'une part, tout le contenu du PDF en même temps, ainsi que du texte et un tas de tableaux inutiles, et, d'autre part, nous perdrons à nouveau des données en raison d'erreurs séparateurs. Par conséquent, nous effectuerons l'importation dans Excel via le complément Power Query. Il s'agit d'un module complémentaire entièrement gratuit avec lequel vous pouvez télécharger des données vers Excel à partir de presque toutes les sources (fichiers, dossiers, bases de données, systèmes ERP), puis transformer les données reçues de toutes les manières possibles, en leur donnant la forme souhaitée.

Si vous avez Excel 2010-2013, vous pouvez télécharger Power Query à partir du site Web officiel de Microsoft - après l'installation, vous verrez un onglet Requête d'alimentation. Si vous avez Excel 2016 ou une version plus récente, vous n'avez rien à télécharger - toutes les fonctionnalités sont déjà intégrées à Excel par défaut et se trouvent dans l'onglet Données (Date) en groupe Télécharger et convertir (Obtenir et transformer).

Alors on passe soit à l'onglet Données, ou sur l'onglet Requête d'alimentation et choisissez une équipe Pour obtenir des données or Créer une requête - à partir d'un fichier - à partir de XML. Pour rendre visibles non seulement les fichiers XML, modifiez les filtres dans la liste déroulante dans le coin inférieur droit de la fenêtre pour Tous les fichiers (Tous les fichiers) et spécifiez notre fichier MHTML :

Importer des données de PDF vers Excel via Power Query

Veuillez noter que l'importation ne se terminera pas avec succès, car. Power Query attend XML de notre part, mais nous avons en fait un format HTML. Par conséquent, dans la fenêtre suivante qui apparaît, vous devrez faire un clic droit sur le fichier incompréhensible à Power Query et préciser son format :

Importer des données de PDF vers Excel via Power Query

Après cela, le fichier sera correctement reconnu et nous verrons une liste de toutes les tables qu'il contient :

Importer des données de PDF vers Excel via Power Query

Vous pouvez afficher le contenu des tableaux en cliquant sur le bouton gauche de la souris dans le fond blanc (pas dans le mot Tableau !) des cellules de la colonne Données.

Lorsque la table souhaitée est définie, cliquez sur le mot vert lampe de table – et vous « tombez » dans son contenu :

Importer des données de PDF vers Excel via Power Query

Il reste à faire quelques gestes simples pour « peigner » son contenu, à savoir :

  1. supprimer les colonnes inutiles (clic droit sur l'en-tête de colonne – Effacer)
  2. remplacez les points par des virgules (sélectionnez les colonnes, faites un clic droit - Remplacement des valeurs)
  3. supprimer les signes égal dans l'en-tête (sélectionnez les colonnes, cliquez avec le bouton droit - Remplacement des valeurs)
  4. supprimer la ligne du haut (ACCUEIL – Supprimer les lignes – Supprimer les lignes du haut)
  5. supprimer les lignes vides (Accueil – Supprimer les lignes – Supprimer les lignes vides)
  6. monter la première ligne jusqu'à l'en-tête du tableau (Accueil – Utiliser la première ligne comme titres)
  7. filtrer les données inutiles à l'aide d'un filtre

Lorsque la table est ramenée à sa forme normale, elle peut être déchargée sur la feuille avec la commande fermer et télécharger (Fermer et charger) on La principale languette. Et nous obtiendrons une telle beauté avec laquelle nous pouvons déjà travailler:

Importer des données de PDF vers Excel via Power Query

  • Transformer une colonne en table avec Power Query
  • Fractionner le texte collant en colonnes

Soyez sympa! Laissez un commentaire