Code Vba
Résolu
Bonjour chers amis,
J'essaie en double cliquant en colonne A qui contient cette formule : =SI(ESTVIDE(F27);"";A26+1)
sur le numéro d'ordre (ex. 20) pour que ça m’ouvre la facture 20.pdf enregistrée dans le même dossier et qui se trouve sur le bureau.
Ce pour chaque numéro d'enregistrement quel que soit le logiciel PDF.
J'ai essayer ce code, mais il ne fonctionne pas.
Ne maitrisant pas le Vba je suis perdu.
Je vous remercie de bien vouloir m'éclairer.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column = 1 Then
Dim Siret As String
Dim CheminDOc As String
CheminDOc = ChDir("E:\Utilisateurs\Castor\Bureau\Facture rénovation maison")
Siret = Target
If Siret <> "" Then
Shell "C:\Program Files\Foxit Software\Foxit Reader\FoxitReader.exe " & CheminDOc & "\" & Siret
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
J'essaie en double cliquant en colonne A qui contient cette formule : =SI(ESTVIDE(F27);"";A26+1)
sur le numéro d'ordre (ex. 20) pour que ça m’ouvre la facture 20.pdf enregistrée dans le même dossier et qui se trouve sur le bureau.
Ce pour chaque numéro d'enregistrement quel que soit le logiciel PDF.
J'ai essayer ce code, mais il ne fonctionne pas.
Ne maitrisant pas le Vba je suis perdu.
Je vous remercie de bien vouloir m'éclairer.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column = 1 Then
Dim Siret As String
Dim CheminDOc As String
CheminDOc = ChDir("E:\Utilisateurs\Castor\Bureau\Facture rénovation maison")
Siret = Target
If Siret <> "" Then
Shell "C:\Program Files\Foxit Software\Foxit Reader\FoxitReader.exe " & CheminDOc & "\" & Siret
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
13 réponses
-
Re,
J'ai trouvé ceci :
https://www.excel-downloads.com/threads/ouvrir-un-fichier-pdf.220639/
Je vais essayer demain.
Bonne soirée à vous. -
Bonjour Frenchie83,
Je te remercie mais ça met : Attendu fin d'instruction -
Bonjour
En reprenant votre code du début, après CHDIR, il ne doit pas y avoir de parenthèses
ChDir "E:\Utilisateurs\Castor\Bureau\Facture rénovation maison"
Siret = Target
Peut-être que cela solutionnera votre problème.
Cdlt -
Re,
Non il ne se passe rien, désolé -
Re
Teste Ceci, sinon je ne vois pas
Option Explicit
Private Declare Function ShellExecute Lib "shell32.dll" _
Alias "ShellExecuteA" _
(ByVal hwnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim Siret As String
Dim CheminDOc As String
If Target.Column = 1 Then
CheminDOc = "E:\Utilisateurs\Castor\Bureau\Facture rénovation maison"""
Siret = Target
If Siret <> "" Then
Const SW_SHOWMAXIMIZED = 3
ShellExecute 0&, "open", CheminDOc & "\" & Siret & ".pdf", 0&, 0&, SW_SHOWMAXIMIZED
Else
MsgBox "La cellule est vide, veuillez double cliquer sur une autre cellule"
End If
End If
End Sub -
Re,
Oui tout ce chemin est bon
J'ai corrigé
C:\Program Files(x86)\Foxit Software\Foxit Reader\FoxitReader.exe
et c'est pareil -
Re,
As-tu FOXIT Reader installé sur ta machine ?
Si OUI
Le chemin d'accès est -il le bon ?
Idem pour Adobe -
Re,
Cette ligne est surlignée en jaune
Shell "C:\Program Files\Foxit Software\Foxit Reader\FoxitReader.exe " & CheminDOc & "\" & Siret & ".pdf" -
Autant pour moi, il faut l'ôter le CHDIR
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim Siret As String
Dim CheminDOc As String
If Target.Column = 1 Then
CheminDOc = "E:\Utilisateurs\Castor\Bureau\Facture rénovation maison"
Siret = Target
If Siret <> "" Then
Shell "C:\Program Files\Foxit Software\Foxit Reader\FoxitReader.exe " & CheminDOc & "\" & Siret & ".pdf"
Shell "C:\Program Files\Adobe\Reader 10.0\Reader\AcroRd32.exe " & CheminDOc & "\" & Siret & ".pdf"
Else
MsgBox "La cellule est vide, veuillez double cliquer sur une autre cellule"
End If
End If
End Sub -
Re,
Même problème à ChDir -
Re,
Teste comme ceciPrivate Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim Siret As String
Dim CheminDOc As String
If Target.Column = 1 Then
CheminDOc = ChDir("E:\Utilisateurs\Castor\Bureau\Facture rénovation maison")
Siret = Target
If Siret <> "" Then
Shell "C:\Program Files\Foxit Software\Foxit Reader\FoxitReader.exe " & CheminDOc & "\" & Siret & ".pdf"
Shell "C:\Program Files\Adobe\Reader 10.0\Reader\AcroRd32.exe " & CheminDOc & "\" & Siret & ".pdf"
Else
MsgBox "La cellule est vide, veuillez double cliquer sur une autre cellule"
End If
End If
End Sub -
Bonjour M-12
Je te remercie de t'intéresser à ma demande
J"ai fonction ou variable attendu ici
CheminDOc = ChDir("E:\Utilisateurs\Castor\Bureau\Facture rénovation maison") & Siret & ".PDF" -
Bonjour,
Il faudrait rajouter l’extension du fichier PDF à ouvrir
& Siret &".PDF"