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

XL 2019 fichier pdf dans excel

telemarrk

XLDnaute Occasionnel
Bonsoir,

Peut-on importer dans un classeur des fichiers PDF avec liens ? Je m'explique

J'ai créé mon fichier et je suis aller dans : Données/Obtenir des données/A partir d'un fichier/A partir d'un dossier

Là, je lui ai indiquer le chemin du dossier, il m'a créé un tableau avec une colonne qui reprend le nom des fichiers PDF mais j'aimerais cliquer sur le nom et ouvrir le fichier pdf dans Acrobat ou autre logiciel.

Je vous joins une capture d'écran

Merci
 

Pièces jointes

  • Capture.png
    21.7 KB · Affichages: 32

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Dans le fichier suivant vous verrez une requête qui liste les fichiers du répertoire qui le contient et en crée une formule "'=LIEN_HYPERTEXTE"
Après la mise à jour de la requête, vous pouvez chercher "'=" (apostrophe+ égal) et remplacer par "=" et vos liens seront effectifs .
 

Pièces jointes

  • PQ-Liens_Hyppertextes.xlsx
    17.6 KB · Affichages: 6

Hasco

XLDnaute Barbatruc
Repose en paix
Bonsoir,
Vérifiez que la cellule nommée 'Dossier' contient bien le chemin du répertoire voulu.
Puis click-droit dans une cellule du tableau vert et choisissez "Actualiser". Ou dans l'onglet 'Données' le bouton 'Actualiser tout'
Une fois le tableau mis à jour, sélectionnez la première colonne puis Ctrl+h (pour rechercher/remplacer) et dans la zone "Rechercher" mettez '= (apostrophe + égal) et dans la zone "Remplacer" mettez = (signe égal) puis cliquez sur "Remplacer tout"

Pour voir la requête, clickez dans une cellule du tableau puis sur le bouton "Modider" de l'onglet "Requête" qui vient de s'afficher sur le ruban.
 

job75

XLDnaute Barbatruc
Bonsoir à tous,

Une solution VBA très classique et très simple :
VB:
Sub MAJ()
Dim chemin$, fichier$, lig&
chemin = ThisWorkbook.Path & "\"
fichier = Dir(chemin & "*.pdf")
lig = 2
Application.ScreenUpdating = False
With Feuil1 'CodeNamz
    .Rows(lig & ":" & .Rows.Count).Delete 'RAZ
    While fichier <> ""
        .Hyperlinks.Add .Cells(lig, 1), Address:=chemin & fichier, TextToDisplay:=fichier
        .Cells(lig, 2) = FileDateTime(chemin & fichier)
        lig = lig + 1
        fichier = Dir
    Wend
End With
End Sub
Téléchargez les fichiers joints dans le même dossier (le bureau) et cliquez sur le bouton.

A+
 

Pièces jointes

  • Liens PDF(1).xlsm
    18.3 KB · Affichages: 3
  • PDF1.pdf
    9.7 KB · Affichages: 1
  • PDF2.pdf
    22.8 KB · Affichages: 1

job75

XLDnaute Barbatruc
Si vous êtes agacé par l'alerte Excel quand on clique sur un lien placez dans le code de la feuille :
VB:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
If Target.Hyperlinks.Count Then
    If Target.Hyperlinks(1).Address <> "" Then
        Cancel = True
        CreateObject("wscript.shell").SendKeys "{TAB}~"
        Me.Parent.FollowHyperlink Target.Hyperlinks(1).Address
    End If
End If
End Sub
et faites un clic droit sur le lien.

Bonne nuit.
 

Pièces jointes

  • Liens PDF(2).xlsm
    19.3 KB · Affichages: 5
  • PDF1.pdf
    9.7 KB · Affichages: 3
  • PDF2.pdf
    22.8 KB · Affichages: 3

telemarrk

XLDnaute Occasionnel
Merci Job75, c'est ce que je recherche à faire.

Par contre, peut-on remplacer la colonne "FileDateTime" par une colonne date et mettre la date de l'import du fichier dans le dossier.

Dernière demande, peut-on également faire la MAJ automatiquement à l'ouverture du fichier.


Merci
 

job75

XLDnaute Barbatruc
Bonjour telemarrk, le forum,

Pas de problème, voyez ce fichier (3) et la macro dans ThisWorkbook :
VB:
Private Sub Workbook_Activate()
Dim chemin$, fichier$, lig&
chemin = ThisWorkbook.Path & "\"
fichier = Dir(chemin & "*.pdf")
lig = 2
Application.ScreenUpdating = False
With Feuil1 'CodeNamz
    .Range("A" & lig & ":B" & .Rows.Count).Delete xlUp 'RAZ
    While fichier <> ""
        .Hyperlinks.Add .Cells(lig, 1), Address:=chemin & fichier, TextToDisplay:=fichier
        .Cells(lig, 2) = CDate(Format(FileDateTime(chemin & fichier), "dd/mm/yyyy"))
        lig = lig + 1
        fichier = Dir
    Wend
End With
End Sub
Elle se déclenche quand on ouvre ou active le fichier.

La date est celle de la création du fichier PDF.

A+
 

Pièces jointes

  • Liens PDF(3).xlsm
    18.6 KB · Affichages: 4
  • PDF1.pdf
    9.7 KB · Affichages: 1
  • PDF2.pdf
    22.8 KB · Affichages: 1

Discussions similaires

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