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

Lien fichier Excel avec fichier PDF

  • Initiateur de la discussion Initiateur de la discussion snotpm
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

snotpm

Guest
Bonsoir à toutes et à tous,

Voici mon problème. j'ai d'un côté un fichier excel (Vide) et de l'autre un tas de fichier PDF qui on tous un intitulé bien défini.

Sur le fichier excel, j'aimerais créer un base de données avec tous les noms des fichiers PDF et des informations complémentaire qui si rapport à chaque fichiers.

A présent j'aimerais que sur une autre feuille (dans le même classeur que la base de données) je puisse faire une recherche d'un fichier PDF. Mais si je ne me souviens plus exactement le nom de se fichier qu'il me sorte quelque nom qui s'y rapport et qu'après en cliquant sur celui qui me convient, il m'ouvre le fichier PDF correspondant ?

Je ne sais si j'ai été assez préci mais dans tout les cas je reste à votre entière disposition pour tout complément d'information...

Et dans l'attente d'une réponse de votre part qui puisse m'aider, je vous souhaite à toutes et à tous une excellent soirée !

SNOTPM
 
Re : Lien fichier Excel avec fichier PDF

Bonsoir/bonjour Snotpm,

Va voir sur le site de Frédéric Sigonneau (excel-entisime) ou mieux, suit le lien ci-dessous.
Ce site n'existe plus

Tu cliques sur VBA Excel puis sur Fichiers & dossiers.

Tu devrais y trouver ton bonheur.
Je pense que cette application devrait pouvoir d'aider.
AfficherFichiersHypertexte.bas

Ce site est une mine d'or.
Bon courage.
Michel
 
Re : Lien fichier Excel avec fichier PDF

Salut,voir sur https://www.excel-downloads.com/threads/vba-liste-dossiers-et-sous-dossiers-dun-dosssier.126930/ et adapter
sinon peut-être qqch comme
Code:
Option Explicit

Private Declare Function QueryPerformanceCounter Lib "Kernel32" (X As Currency) As Boolean
Private Declare Function QueryPerformanceFrequency Lib "Kernel32" (X As Currency) As Boolean

Dim NbFichiers As Long, NbDossiers As Long
Dim Dep As Currency, Fin As Currency, Freq As Currency
Dim r As Long
Const TypeFichier As String = "pdf"

Private Sub ListeFichiers(sDossier As String)
    DoEvents
    Application.ScreenUpdating = False
    QueryPerformanceCounter Dep

    ShFichiers.Cells.Clear
    r = 0: NbDossiers = 0: NbFichiers = 0

    ListeFichiersDansDossier sDossier, True
    'Tri
    
    QueryPerformanceCounter Fin: QueryPerformanceFrequency Freq
    With Application
        .StatusBar = "Dossiers : " & NbDossiers & " /  Fichiers : " & NbFichiers & " / " & TypeFichier & " : " & r & " / " & Format(((Fin - Dep) / Freq), "0.00 s")
        .ScreenUpdating = True
    End With
End Sub

Private Sub Tri()
    ShFichiers.Columns("A").Sort Key1:=.Range("A1"), Order1:=xlAscending
End Sub

Private Sub ListeFichiersDansDossier(sChemin As String, InclureSousDossiers As Boolean)
Dim FSO As Object, Dossier As Object, Fichier As String
Dim sPath As String

    Set FSO = CreateObject("Scripting.FileSystemObject")
    Set Dossier = FSO.GetFolder(sChemin)

    Fichier = Dir$(sChemin & "\*.*")
    Do While Len(Fichier) > 0
        NbFichiers = NbFichiers + 1
        sPath = sChemin & "\" & Fichier

        If UCase(TypeFichier) = UCase(FSO.GetExtensionName(Fichier)) Then
            r = r + 1
            ShFichiers.Hyperlinks.Add Anchor:=ShFichiers.Range("A" & r), _
                                      Address:=sPath, TextToDisplay:=CStr(Fichier)
        End If

        Fichier = Dir$()
        Application.StatusBar = "Dossiers : " & NbDossiers & " /  Fichiers : " & NbFichiers & " / " & TypeFichier & " : " & r
    Loop

    If InclureSousDossiers Then
        For Each Dossier In Dossier.SubFolders
            NbDossiers = NbDossiers + 1
            ListeFichiersDansDossier Dossier.Path, True
        Next Dossier
    End If

    Set Dossier = Nothing
    Set FSO = Nothing
End Sub

Sub SelDossier()
Dim sChemin As String

    sChemin = ThisWorkbook.Path
    With Application.FileDialog(msoFileDialogFolderPicker)
        .InitialFileName = sChemin & "\"
        .Title = "Dossier à traiter"
        .AllowMultiSelect = False
        .InitialView = msoFileDialogViewDetails
        .ButtonName = "Sélection Dossier"
        .Show
        If .SelectedItems.Count > 0 Then ListeFichiers .SelectedItems(1)
        ShFichiers.Range("C1").Select
    End With
End Sub
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

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