Gestionnaire Excel de fichiers Pdf

Hello, Hello, 8)

Yʕ •̥͡•ʔ/ Je propose une nouvelle application Excel qui me sert de gestionnaire de fichiers Pdf.

Ici > https://www.excel-pratique.com/fr/telechargements/outils-de-gestion/gestionnaire-pdf-excel-no239.php


Elle permet d'importer dans Excel des lots de fichiers Pdf, afin d'y réaliser des actions de manière pratique :

> Renommer les fichiers

> Déplacer les fichiers

> Envoyer par mail (Outlook) les fichiers

> Imprimer les fichiers

> Supprimer les fichiers

> Ouvrir les fichiers par lien hypertexte

Actions qui peuvent être exécutées, soit sur un fichier, soit sur l'ensemble des fichiers, importés dans Excel.

La version 3.0 permet de supprimer plus facilement des lignes du tableau et la liste se rallonge automatiquement lors des importations


present gestionnaire pdf v3

Note :

*Pour activer la fonction mailing, cocher la référence Outlook dans le développeur VBA.

Au besoin, ce post parle de la méthode : https://forum.excel-pratique.com/cours-astuces/excel-outlook-envoi-mail-t29003.html

*Possibilité d'importer les adresses mails de vos contacts Outlook dans la version 2.2 de ce fichier

* Gestionnaire Pdf : Pour modifier la taille de la liste fichier au-delà des 200 lignes et conserver le format des cellules boutons j'ai fait un petit Mod-Op d'explication en PJ

* Gestionnaire Pdf : Mod'Op temporaire, comment supprimer des lignes à la liste fichiers

* Gestionnaire Pdf : Mod'Op pour changer d'extension .pdf->.doc à la page 2

* Gestionnaire Pdf : Evolution v.3.0 permet de supprimer plus facilement des lignes et ajoute automatiquement des lignes en fonction de l'appel de fichiers

* Version tous types d'extension ici : https://www.excel-pratique.com/fr/telechargements/outils-de-gestion/gestionnaire-universel-de-fichiers-no358.php


Nouveautés de la version 3.0 :

Suppression de lignes du tableau facilité

________> Possibilité de supprimer une ligne du tableau de manière spécifique

________> Possibilité de lever la protection de l'onglet pour supprimer autant de lignes que nécessaire

Aide pour Supprimer les commentaires cellules à l'intérieur du tableau gérant les fichiers

Allongement du tableau de manière automatique par ajout de lignes en fonction du nombre de fichiers importés

Ajout d'une FAQ sur le fonctionnement du Gestionnaire

Amélioration de l'organisation et des messages de l'application (boutons, code, messages...)


Découverte de bug, version 3.00 du gestionnaire :

J'ai vu qu'il y'avait une erreur dans le code de la sub : Sub BOUCLE_RENOM_FICHIERS() 'Renommage fichier pdf

En attendant la version 3.01, il faut corriger le bug manuellement.

Le pb c'est que la variable source du fichier reste figer sur le 1er dossier du 1er fichier, pas de soucis si on ne gère pas des fichiers de plusieurs dossiers, mais dans le cas de plusieurs dossier le renommage ne marche pas, car la variable source n'est pas dans la boucle Loop.

Il faudra corriger en manuel dans l'éditeur cette partie du code (à partir de la ligne 745-747) :

      'IV.a. Modif du nom fichier à celui indiqué dans la colonne nom fichier amende F
      destin = ThisWorkbook.ActiveSheet.Range("G" & numligne).Text & Application.PathSeparator & ThisWorkbook.ActiveSheet.Range("D" & numligne).Text & Application.PathSeparator
      Fichier = Dir(source & Application.PathSeparator & ThisWorkbook.ActiveSheet.Range("B" & numligne).Text, vbNormal)

Par cette correction (ligne source à ajouter) :

      'IV.a. Modif du nom fichier à celui indiqué dans la colonne nom fichier amende F
      destin = ThisWorkbook.ActiveSheet.Range("G" & numligne).Text & Application.PathSeparator & ThisWorkbook.ActiveSheet.Range("D" & numligne).Text & Application.PathSeparator
      source = ThisWorkbook.ActiveSheet.Range("G" & numligne).Text & Application.PathSeparator  'def chemin source du fichier avec le nom du fichier en cours
      Fichier = Dir(source & Application.PathSeparator & ThisWorkbook.ActiveSheet.Range("B" & numligne).Text, vbNormal)

acp pdf 2 file document

Salut Waard et merci pour ce partage

Joli petit utilitaire mais 1er bug

Si tu ne saisi pas de nom de fichier en colonne D et que tu double clique sur la cellule E, le fichier est renommé malgré tout et ne se retrouve donc plus qu'avec son extension

Un petit test facile à faire

A+

Hello BrunoM45,

Merci pour le bug , effectivement et souci si on lance la boucle renom sur tous les fichiers de la liste et qu'il y'a un vide au milieu Je vais ajouté un petit test en supp aux 2 macros de renommage fichiers pour ce cas.

Je ré-up l'appli. demain avec la correction et des msgbox d'info. dédiés à cette ano.

Encore merci et a+

Hello Hello, 8)

Pour info géné.

Ré-up de l'application en cours, nouvelle version : 2.01 dispo dès validation.

Ajout d'un module indépendant, au gestionnaire de pdf

J'ai créé un module indépendant à mon gestionnaire de Pdf, permettant de visualiser des Pdf à l'intérieur d'Excel à l'aide de l'activex du lecteur PDF-XChange Viewer (existant en version gratuite).

8) Ça donne ça :

visualisateur de pdf avec pdf xchange viewer

Lien de téléchargement : https://www.excel-pratique.com/fr/telechargements/utilitaires/visualisateur-fichiers-pdf-excel-no254.php

Bonsoir Waard

C boooooonnn çaaaaaa

De rien, de rien, avec PDF-XChange Viewer, ça m'a pris 5 minutes pour le coder, par contre en 3 week-ends de recherche impossible de faire fonctionner les codes connus sur l'internet français/anglais fonctionnant avec Acrobat reader ou l'explorateur, sur mes OS Vista/7/10, tout sort sur lecteur externe... Dommage mais pour moi avec PDF-XChange Viewer, ça marche directement, mais il y'a l'inconvénient du message au milieu du Pdf.

Bonjour.

Comment fait-on pour que les lignes >200 soient formatées comme les précédentes ?

Votre macro télécharge bien les fichiers et les affiche bien, les macros semblent opérationnelles puisque le double clic fonctionne mais pas le format des cellules.

Merci

Avis : Mod'Op pour augmenter la taille de la liste du gestionnaire de fichiers Pdf et formater les boutons

De Castey a écrit :

Comment fait-on pour que les lignes >200 soient formatées comme les précédentes ?

Votre macro télécharge bien les fichiers et les affiche bien, les macros semblent opérationnelles puisque le double clic fonctionne mais pas le format des cellules.

Bonjour,

Bonne question, merci.

J'ai mis ci-joint, un Mod'Op, pour allonger la liste du gestionnaire et conserver le format des cellules et des boutons.

Pour ce qui est du code VBA, il n'y a pas de changements, celui-ci parcourt les colonnes de chaque bouton d'action et pour ce qui est des boutons de gestion masse, le code parcourt le tableau en mode Tant Que (+ des variables de sécurité suivant les actions).

Bonne utilisation à tout le Monde.

Cela marche parfaitement.

Merci beaucoup

Bonjour.

Merci beaucoup pour votre gestionnaire qui m'est vraiment très utile.

Deux questions à son sujet :

1 - Les fonctions "SUPPRIMER" sont très 'violentes'. Je m'en suis aperçu trop tard (elles suppriment les fichiers du disque dur et non pas du fichier ! Heureusement j'avais fait une sauvegarde avant d'utiliser votre programme). Que doit-on faire pour effacer un fichier dans le programme sans l'effacer du DD ? La réinitialisation le retrouvera lors de l'importation suivante d’où l'obligation d'effacer ligne par ligne. la réinitialisation suivante obligera à recommencer , le(s) fichier(s) réapparaîtra(ont).

2 - Comment fait-on pour ajouter un nouveau fichier ? Uniquement par la réinitialisation et l'import ?

Cette question est dépendante de la première puisque si la réinitialisation est la seule solution, la 2nde devient sans objet.

Question subsidiaire : Existe-t-il un programme semblable qui permettrait d'avoir la liste tous les courriers WORD qui sont éparpillés dans plusieurs répertoires ?

Remerciements

Avis : FAQ & Comment supprimer des lignes de la liste fichier du gestionnaire Pdf

Hello, hello,

Pour réponse:

De Castey a écrit :

1 - Les fonctions "SUPPRIMER" sont très 'violentes'. Je m'en suis aperçu trop tard (elles suppriment les fichiers du disque dur et non pas du fichier ! Heureusement j'avais fait une sauvegarde avant d'utiliser votre programme). Que doit-on faire pour effacer un fichier dans le programme sans l'effacer du DD ? La réinitialisation le retrouvera lors de l'importation suivante d’où l'obligation d'effacer ligne par ligne. la réinitialisation suivante obligera à recommencer , le(s) fichier(s) réapparaîtra(ont).

Toutes les actions sont sur les fichiers comme indiqué dans le descriptif d'application, le bouton est rouge et il y'a une mise en garde avant, mais je regarderai lors de l'évolution du fichier comment y rendre plus clair. En attendant j'ai fait un autre Mod'Op pour supprimer des lignes de la liste (il y'a 3 méthodes, toutes sont simples).

Le truc (et le fait que l'orga du fichier ait été modifié depuis sa conception), c'est que comme les boutons lignes sont protégés, les lignes de la liste aussi et leur suppression n'est pas possible, mais je changerai ça dans la future évolution.

De Castey a écrit :

2 - Comment fait-on pour ajouter un nouveau fichier ? Uniquement par la réinitialisation et l'import ?

Cette question est dépendante de la première puisque si la réinitialisation est la seule solution, la 2nde devient sans objet.

Oui, pour ajouter un fichier il faut passer par la fonction "importer Pdf dans liste" ou le faire manuellement dans Excel.

Et la fonction "réinitialisation" sert à vider la liste de fichiers complétement.

De Castey a écrit :

Question subsidiaire : Existe-t-il un programme semblable qui permettrait d'avoir la liste tous les courriers WORD qui sont éparpillés dans plusieurs répertoires ?

Techniquement, il s'agit en gros de codes en VB Script, qui peut interagir avec Windows sur tous types de fichiers pour la plupart des fonctions (hors impression), le gestionnaire est codé en dur pour gérer que des Pdf, mais il pourrait bien faire tous les fichiers. Peut-être sortirais-je une appli. pour gérer tous type de fichiers, mais en attendant de tester si toutes les fonctions marchent parfaitement sur tous les types de fichiers (le code complet faisant >1000 lignes, plus très sûr que modifier l'occurrence .pdf->.doc soit suffisant*), je peux proposer :

  • Une macro de Nardo qui liste des fichiers d'un répertoire avec possibilité de choisir l'extension fichier et modification pour supprimer des fichiers. En PJ.
  • Une macro pour renommer en masse n'importe quel fichier de jacques Boisgontier, dispo sur ce lien :
http://boisgontierjacques.free.fr/pages_site/GestionRepertoire.htm#RenommeFichiers

L> Son site est d'ailleurs le plus fournis et sert de référence, il y'a aussi des codes pour récupérer l'arborescence d'un répertoire.

Sinon il y'a aussi info-3000 qui explique bien pas mal de fonctions :

http://www.info-3000.com/vbvba/fichiers/

Voilà

* Edit: Après test, en faisant un simple rechercher/remplacer .pdf -> .doc dans le code du gestionnaire, les fonctions Importer / Renommer / Déplacer / Supprimer ont l'air de marcher convenablement avec les fichiers word.

Merci pour votre réponse.

Je me sers beaucoup d'Excel mais je n'ai jamais pris le temps de faire des macros. Aussi, je me suis permis d'aller voir comment les vôtres étaient faites et, sans en comprendre toutes les fonctions, j'ai 'fouiné' et j'ai très vite compris qu'en remplaçant .PDF par .DOCX l'application devait fonctionner (ou à peu près).

Ce qui s'est révélé exact à quelques exceptions près :

Impossible de renommer la ligne 1 de l'onglet gestionnaire. J'ai beau changer GESTIONNAIRE DE FICHIERS.PDF en GESTIONNAIRE DE FICHIERS.DOCX, le 1er libellé revient invariablement.

De même, la routine APPEL_LISTE_FICHIERS_PDF ne peut être renommée. Dans le cas contraire, la macro plante.

Dernier point constaté : Le nombre de pages (colonne C) reste invariablement à 0 (la macro met la couleur de la cellule en rose --> il y a donc une erreur détectée). Je ne sais s'il s'agit d'une erreur due à WORD qui ne numérote pas comme la macro pourrait le détecter ou s'il s'agit d'une variable non modifiée lors de mes modifications.

Merci encore pour votre travail et vos réponses.

Avis : Comment modifier l'extension fichier traité

Hello,

Attention, les modifications dont on parle De Castey et moi au 26/11/16, sont à prendre avec précautions, si vous aussi voulez les faire, veuillez bien le faire sur des dossiers et fichiers tests avant chez vous.

De Castey a écrit :

Aussi, je me suis permis d'aller voir comment les vôtres étaient faites et, sans en comprendre toutes les fonctions, j'ai 'fouiné' et j'ai très vite compris qu'en remplaçant .PDF par .DOCX l'application devait fonctionner (ou à peu près).

Ce qui s'est révélé exact à quelques exceptions près :

1. Changer l"extension fichier

Pour changer les extensions pour traiter par exemple du .pdf -> .doc, il faut aller dans l'éditeur VBA, se placer sur le module feuille gestionnaire, faire Ctrl+F, puis faire un remplacer tout; mot entier; .pdf en .doc (casse minuscule identique!).

Ce qui en même temps modifie la mention pdf en doc dans les fenêtres de dialogue et message, c'est sommaire et expéditif mais semble ok pour un fonctionnement had'hoc.

remplacer les extensions gestionnaire de fichier

De Castey a écrit :

Impossible de renommer la ligne 1 de l'onglet gestionnaire. J'ai beau changer GESTIONNAIRE DE FICHIERS.PDF en GESTIONNAIRE DE FICHIERS.DOCX, le 1er libellé revient invariablement

2. Changer l'affichage

C'est normal, car dans un esprit pro., j'ai fait un affichage personnalisé, pour traité le gestionnaire comme n'importe quelle autre appli.. Du coup, j'ai opté pour cadrer la plupart des mouvements que pourrait faire l'utilisateur courant, optant pour qu'il ne puisse que modifier les cellules des fichier importés et lui mettre une interdiction par macro, de modification des bouton (ne lui permettant que de les activer et capturer l'emplacement du double-clic) et de l'entête de l'affichage (pour garder le même affichage supérieur, celui-ci étant aussi figé pour le défilement).

Ce sont les macro Worksheet_Change et Worksheet_BeforeDoubleClick qui gèrent ces interdictions, pour les désactiver et faire des modifications dans l'affichage, il faut les désactiver en appuyant sur le bouton [b]"Mode Création"

protection gestionnaire

[/b] (rappuyer sur le boutons pour réactiver les macros ), pour les gros boutons => clic droit et modifier texte.

De Castey a écrit :

De même, la routine APPEL_LISTE_FICHIERS_PDF ne peut être renommée. Dans le cas contraire, la macro plante

C'est comme dans un livre, si vous modifiez le nom d'un chapitre dans le sommaire et que dans le livre, il existe des paragraphes qui y reportent en utilisant l'ancien nom, cela fait un bug.

D'où l'utilité de faire un rechercher/remplacer tout, car ce bug ne veut dire qu'une chose, le nom de la macro seule à été modifiée, par contre dans toutes les autres macros qui s'y référent, non.

De manière générale, il ne faut pas modifier les noms des macros sans vérifier que ces noms sont repris ailleurs en VBA.

De Castey a écrit :

Dernier point constaté : Le nombre de pages (colonne C) reste invariablement à 0 (la macro met la couleur de la cellule en rose --> il y a donc une erreur détectée). Je ne sais s'il s'agit d'une erreur due à WORD qui ne numérote pas comme la macro pourrait le détecter ou s'il s'agit d'une variable non modifiée lors de mes modifications.

Oui il y'a échec de la récupération du nombre de pages et ce bug existe aussi avec les Pdf suivant leur version, je ne sais pas pourquoi, il faudra faire une correction pour word si c'est utile, c'est pour ça que pour l'instant, pour moi je ne dis pas que le gestionnaire est entièrement opérationnel avec n'importe quel fichier. Les fonctions semblent néanmoins marcher convenablement suivant mes tests (Par contre je ne peux pas valider la fonction mail outlook ).

Merci.

Avis de nouvelle version 3.0

Hello, Hello,

8) Avis d'évolution de mon gestionnaire de Pdf à la version 3.0, en cours de Up.

Dispo. à la même adresse.

present gestionnaire pdf v3

Nouveautés de la version 3.0 :

Suppression de lignes du tableau facilité

________> Possibilité de supprimer une ligne du tableau de manière spécifique

________> Possibilité de lever la protection de l'onglet pour supprimer autant de lignes que nécessaire

Aide pour Supprimer les commentaires cellules à l'intérieur du tableau gérant les fichiers

Allongement du tableau de manière automatique par ajout de lignes en fonction du nombre de fichiers importés

Ajout d'une FAQ sur le fonctionnement du Gestionnaire

Amélioration de l'organisation et des messages de l'application (boutons, code, messages...)

Voilà, bon futurs tests

Bonjour,

Tous d'abord merci pour votre fichier trés bien conçut en revanche je souhaiterais m'en servir pour d'autres type de fichier, j'ai deja vu votre commentaire plus haut effectivement ca fonctionne mais pour un type de fichier or je souhaiterais ouvrir plus type de fichier (pdf, word, excel...).

Penser vous que cela soit possible.

Merci d'avance.

Hello fx1013,

Voici une version alpha du gestionnaire gérant tous types de fichiers.

Bien sûr certaines fonctions ne pourrons fonctionner avec certains type de fichiers (impression, rappel nb pages).

Pas fait de test poussés de recherche de bug, à tester avant sur des fichiers test d'un dossier test.

Découverte de bug, version 3.00 du gestionnaire :

Par contre j'ai vu qu'il y'avait une erreur dans le code de la sub : Sub BOUCLE_RENOM_FICHIERS() 'Renommage fichier pdf

En attendant la version 3.01, il faut corriger le bug manuellement.

Le pb c'est que la variable source du fichier reste figer sur le 1er dossier du 1er fichier, pas de soucis si on ne gère pas des fichiers de plusieurs dossiers, mais dans le cas de plusieurs dossier le renommage ne marche pas, car la variable source n'est pas dans la boucle Loop.

Il faudra corriger en manuel dans l'éditeur cette partie du code (à partir de la ligne 745-747) :

      'IV.a. Modif du nom fichier à celui indiqué dans la colonne nom fichier amende F
      destin = ThisWorkbook.ActiveSheet.Range("G" & numligne).Text & Application.PathSeparator & ThisWorkbook.ActiveSheet.Range("D" & numligne).Text & Application.PathSeparator
      Fichier = Dir(source & Application.PathSeparator & ThisWorkbook.ActiveSheet.Range("B" & numligne).Text, vbNormal)

Par cette correction (ligne source à ajouter) :

      'IV.a. Modif du nom fichier à celui indiqué dans la colonne nom fichier amende F
      destin = ThisWorkbook.ActiveSheet.Range("G" & numligne).Text & Application.PathSeparator & ThisWorkbook.ActiveSheet.Range("D" & numligne).Text & Application.PathSeparator
      source = ThisWorkbook.ActiveSheet.Range("G" & numligne).Text & Application.PathSeparator  'def chemin source du fichier avec le nom du fichier en cours
      Fichier = Dir(source & Application.PathSeparator & ThisWorkbook.ActiveSheet.Range("B" & numligne).Text, vbNormal)

Bonjour waard et merci infiniment pour ton gestionnaire qui m'a déjà fait gagner un temps précieux par le passé, ne maîtrisant pas (ou peu) VBA.

J’ai toutefois une question s’agissant de l’importation des fichiers au sein du gestionnaire.

Au sein d'un autre tableau Excel, je dispose en effet d’une multitude de liens hypertextes renvoyant vers des fichiers PDF particuliers dans des dossiers/sous dossiers différents. Est-il par conséquent possible que j’importe ces liens hypertextes directement en colonne B de ton tableur ?

Si oui, peut tu m’expliquer le process à suivre.

J’ai en effet tenté par différents moyens (en créant l’hyperlien moi-même dans chaque ligne de la colonne B, en renseignant le chemin vers le fichier lui-même), mais je ne parviens pas au même résultat que lorsque l’import est effectué grâce à ton bouton « Importer PDF dans liste ».

Merci beaucoup pour ton aide !

Hello Judpom

Oui c'est possible, mais il faut formater tes données pour se conformer au fonctionnement du fichier :

> En col B du Gestionnaire, il faut que ce qui apparaisse dans la cellule soit le nom du fichier (après il peut y avoir un lien hypertexte, il est utilisé uniquement pour l'ouverture du fichier en masse ou par clic)

> En col G du Gestionnaire, il faut qu'il y'ait uniquement le chemin du fichier sans le nom du fichier, exemple: A:\WORLD\New\

Les fonctions dans le gestionnaire ensuite, fusionne les valeurs en Col G et B pour récupérer le chemin complet A:\WORLD\New\12.pdf

S'il manque un \ à la fin du chemin ou que dans le nom du fichier tu remet le chemin, ça bug, car Excel ne retrouve rien.

Je ne sais pas à quoi ressemble tes lien, de ce que je crois avoir compris de ce à quoi ça pouvait ressembler, j'ai fait ci-dessous un petit outil, de conversion de données pour que tu puisse y recoller dans le Gestionnaire (l'outil va jusqu'à la ligne 65000 pour info).

> Il faut mettre en Col A de l'outil, tes liens hypertexte complet, l'outil va extraire le lien et formater en Col B / C / D les liens pour que tu puisse les recoller correctement dans le gestionnaire en col B et G.

Rechercher des sujets similaires à "gestionnaire fichiers pdf"