Ouvrir un document pdf à partir d'une cellule excel 2010

pattie1505

XLDnaute Junior
Bonjour à toutes et à tous,

J'ai besoin d'aide pour trouver si possible une solution à ma requette.

J'ai une feuille excel (ci-joint) et je voudrais lorsque je clique sur la cellule contenant le titre du document pdf situé dans un autre dossier, le document pdf s'ouvre dans une autre fenêtre, afin de pouvoir le consulter.

Explications complémentaires dans ma feuille exemple.

Merci d'avance.
 

Pièces jointes

  • ClasseursSIRET.xlsx
    18.8 KB · Affichages: 370
Dernière édition:

camarchepas

XLDnaute Barbatruc
Re : chemin bouton macro

Bonjour,

Solution proposée :

Pas besoin de bouton, tu doubles clic directement sur la cellule.

Code à copier dans Feuil1

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim Siret As String
Siret = Target
If Siret <> "" Then
  Workbooks.Open Filename:="C:\Users\user\Documents\" & Siret & ".xls*"
 Else
  MsgBox " La cellule est vide, veuillez double cliquer sur une autre cellule"
End Function
 

pattie1505

XLDnaute Junior
Re : chemin bouton macro

Bonjour,
Merci pour ta réponse rapide.
Après l'envoi de mon message, je me suis rendu compte que j'avais omis de préciser que le fichier à ouvrir était un document pdf.
Je m'explique, un document (formulaire pdf) est stocké dans C:\Users\user\Documents.
Chaque document porte le même nom (série de chiffre) qui fait référence au contenu d'une cellule dans la colonne C (SIRET).
Par conséquent en cliquant sur une des cellules, je voudrais ouvrir le document pdf correspondant.
J'espère avoir été un peu plus explicite.
Merci d'avance pour ton aide.
 

camarchepas

XLDnaute Barbatruc
Re : Ouvrir un document pdf à partir d'une cellule excel 2010

Bonsoir ,

comme ceci alors ,

en prenant soin de vérifier et éventuellement modifier le chemin de adobe reader


Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim Siret As String
Dim CheminDOc As String
Dim objShell As Object
Dim objFolder As Object, objFolderItem As Object
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(&H5)
Set objFolderItem = objFolder.Self
    
CheminDOc = objFolderItem.Path
Siret = Target
If Siret <> "" Then
  Shell "C:\Program Files\Adobe\Reader 10.0\Reader\AcroRd32.exe " & CheminDOc & "\" & Siret
 Else
  MsgBox " La cellule est vide, veuillez double cliquer sur une autre cellule"
End If
End Sub
 

pattie1505

XLDnaute Junior
Re : Ouvrir un document pdf à partir d'une cellule excel 2010

Bonjour camarchepas,

Merci encore pour ton aide.
J'ai suivi tes recommandations mais j'ai le message suivant:
"une erreur est survenue lors de l'ouverture de ce document.Fichier introuvable"
 

Pièces jointes

  • Nouveau Présentation Microsoft PowerPoint.jpg
    Nouveau Présentation Microsoft PowerPoint.jpg
    52.5 KB · Affichages: 357

camarchepas

XLDnaute Barbatruc
Re : Ouvrir un document pdf à partir d'une cellule excel 2010

Bonjour ,

Le chemin vers le PDF est celui de mes documents , ton PDF est stocké à cet endroit,

As tu bien vérifié l'endroit de stockage de acrobat :

C:\Program Files\Adobe\Reader 10.0\Reader\AcroRd32.exe

essayes le code modifié pour afficher les variables et notes si cela correspond à ta config

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim Siret As String
Dim CheminDOc As String
Dim objShell As Object
Dim objFolder As Object, objFolderItem As Object
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(&H5)
Set objFolderItem = objFolder.Self
    
CheminDOc = objFolderItem.Path
msgbox chemindoc
Siret = Target
msgbox target
If Siret <> "" Then
  Shell "C:\Program Files\Adobe\Reader 10.0\Reader\AcroRd32.exe " & CheminDOc & "\" & Siret
 Else
  MsgBox " La cellule est vide, veuillez double cliquer sur une autre cellule"
End If
End Sub
 

pattie1505

XLDnaute Junior
Re : Ouvrir un document pdf à partir d'une cellule excel 2010

Bonsoir camarchepas,

Super ! ça y est, cette fois-ci ça fonctionne. Il fallait que mes références dans les cellules excel portent l'extension .pdf
Merci beaucoup.

Une dernière question si tu me le permets.
Dans le cas où je voudrais créer un sous-dossier pour ces documents .pdf, que faut-il changer dans le code;
Par ex: C:\Users\user\Documents\SIRET

Merci encore et bonne soirée.
 

camarchepas

XLDnaute Barbatruc
Re : Ouvrir un document pdf à partir d'une cellule excel 2010

Bonsoir mexcellent,

Si tu utilises un dossier ex : c:\mesPDF

tu peux même enlever une grosse partie du code

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim Siret As String
Dim CheminDOc As String

   
CheminDOc =  "c:\mesPDF"

Siret = Target

If Siret <> "" Then
  Shell "C:\Program Files\Adobe\Reader 10.0\Reader\AcroRd32.exe " & CheminDOc & "\" & Siret
 Else
  MsgBox " La cellule est vide, veuillez double cliquer sur une autre cellule"
End If
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 229
Messages
2 086 423
Membres
103 206
dernier inscrit
diambote