{Résolu} Gestion de fichier PDF

Daemon

XLDnaute Nouveau
Bonjour à tous,

Suite à mes recherches sur internet, je pense qu'excel peut m'aider à gérer les fichiers PDF comme une bibliothèque numérique virtuel personnel.

Je m'explique.

J'ai bon nombre de fichiers PDF. Les noms attribués à ceux-ci sont clairement définis:exemple N° de dossier_attribut n°1_ Attribut n°2_Nom final.

Serait-il possible d'"importer" dans excel les informations repris dans le nom des fichiers PDF ainsi qu'un lien directe vers ceux-ci puis les filtrers selon les critères repris dans le nom ?

A votre avis?

Sachant qu'en VBA, je n'y connait rien.

Merci d'avance pour l'attention que vous porterez à ma demande.

A bientôt.
 
Dernière édition:

BrunoM45

XLDnaute Barbatruc
Re : Gestion de fichier PDF

Bonsoir Daemon,

Je ne sais pas si c'est ce que tu cherches,
mais voilà un fichier qui pourrait faire ce que tu veux

A+
 

Fichiers joints

Daemon

XLDnaute Nouveau
Re : Gestion de fichier PDF

Bonsoir Daemon,

Je ne sais pas si c'est ce que tu cherches,
mais voilà un fichier qui pourrait faire ce que tu veux

A+
Alors là,

Je reste sur le C...

C'est exactement cela.

Et bien chapeau bas. Je reste sans voix

Merci en tout cas pour le temps passé à réaliser le fichier.

J'ai juste une derniere question, si je veux augmenter le nombre de mes attributs, où dans le script doit-on modifier cela?

En tout cas, encore merci.
 

BrunoM45

XLDnaute Barbatruc
Re : Gestion de fichier PDF

Salut Daemon

J'ai juste une derniere question, si je veux augmenter le nombre de mes attributs, où dans le script doit-on modifier cela?
Si tu restes sur le même principe, à savoir chaque attribut séparé par un underscore "_"

Dans mon code j'extrais tous les termes séparé par ce caractère
Code:
On Error Resume Next  ' Pour éviter les erreurs au cas ou
  TabVal = Split(Fic.Name, "_")
On Error GoTo 0 ' activer de nouveau le gestionnaire d'erreur
La fonction SPLIT(Expression, Delimiter) : Renvoie un tableau de base zéro à une dimension contenant le nombre spécifié de sous-chaînes.

Ensuite j'inscris chaque terme dans le tableau
Code:
For Ind = 0 To UBound(TabVal)
  Sht.Cells(DLig + 1, 1 + Ind).Value = TabVal(Ind)
Next Ind
En revanche j'inscris systématiquement le lien hypertexte dans la colonne 'E'
Code:
Sht.Range("E" & DLig + 1).Hyperlinks.Add Sht.Range("E" & DLig + 1), Fic.Path
Il faudrait remplace rcette ligne par
Code:
Sht.Cells(DLig + 1, 1 + Ind).Hyperlinks.Add Sht.Cells(DLig + 1, 1 + Ind), Fic.Path
J'espère avoir été clair
A+
 

Daemon

XLDnaute Nouveau
Re : Gestion de fichier PDF

Salut Daemon


Si tu restes sur le même principe, à savoir chaque attribut séparé par un underscore "_"

Dans mon code j'extrais tous les termes séparé par ce caractère
Code:
On Error Resume Next  ' Pour éviter les erreurs au cas ou
  TabVal = Split(Fic.Name, "_")
On Error GoTo 0 ' activer de nouveau le gestionnaire d'erreur
La fonction SPLIT(Expression, Delimiter) : Renvoie un tableau de base zéro à une dimension contenant le nombre spécifié de sous-chaînes.

Ensuite j'inscris chaque terme dans le tableau
Code:
For Ind = 0 To UBound(TabVal)
  Sht.Cells(DLig + 1, 1 + Ind).Value = TabVal(Ind)
Next Ind
En revanche j'inscris systématiquement le lien hypertexte dans la colonne 'E'
Code:
Sht.Range("E" & DLig + 1).Hyperlinks.Add Sht.Range("E" & DLig + 1), Fic.Path
Il faudrait remplace rcette ligne par
Code:
Sht.Cells(DLig + 1, 1 + Ind).Hyperlinks.Add Sht.Cells(DLig + 1, 1 + Ind), Fic.Path
J'espère avoir été clair
A+
Merci pour la réponse rapide.

Cela marche Nickel.

J'ai modifier le script et la dernière colonne est bien le lien.

Merci pour tout.
 

Daemon

XLDnaute Nouveau
Re : {Résolu} Gestion de fichier PDF

Bonjour à tous,

J'ai été voir sur le fofo et sur le net si il y avait moyen d'intégrer les sous répertoires (SubFolder). J'ai trouvé effectivement des bout de code. Mais j'arrive pas à les assembler avec celui du fichier de BrunoM45.

Voici ce qu'est j'ai trouver sur le fofo:

Code:
Sub TousLesDossiers(LeDossier$, Idx As Long)
    Dim fso As Object, Dossier As Object
    Dim sousRep As Object, Flder As Object
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set Dossier = fso.GetFolder(LeDossier)
    'examen du dossier courant
    For Each Flder In Dossier.subfolders
        Idx = Idx + 1
        Cells(Idx, 1).Value = Flder.Path
    Next
    'traitement récursif des sous dossiers
    For Each sousRep In Dossier.subfolders
        TousLesDossiers sousRep.Path, Idx
    Next sousRep
    Set fso = Nothing
End Sub                                               'fs
Sub test()
  TousLesDossiers "D:\LUI\Developement\VB_VBA\", 0
End Sub
 

BrunoM45

XLDnaute Barbatruc
Re : {Résolu} Gestion de fichier PDF

Salut Daemon,

Il faut mettre le code en dehors du code principal, sinon tu ne peux pas faire de récursivité

Voir ton fichier modifié en V1.2

A+
 

Fichiers joints

Daemon

XLDnaute Nouveau
Re : {Résolu} Gestion de fichier PDF

Salut Daemon,

Il faut mettre le code en dehors du code principal, sinon tu ne peux pas faire de récursivité

Voir ton fichier modifié en V1.2

A+
Merci encore une fois pour la réponse et la modification rapide.

Voilà, j'ai mon fichier parfait comme je veux.

Merci et à bientot sur le fofo
 

Haut Bas