Bonjour,

je suis depuis quelques jours sur une macro que je ne parviens pas à faire fonctionner malgré de nombreux essais suite à mes recherches sur la toile. Je suis relativement novice en VBA et mon problème va peut être vous sembler idiot...

Pour le contexte, tout d'abord mon fichier devra être utilisé par différentes personnes au sein de mon entreprise, d'où ma mission de créer un outil "simple d'utilisation"..
Au départ, j'ai créer un tableau en feuille1 de mon classeur (tableau que chacun devra remplir)
Ensuite, au travers d'une macro, un rapport concernant la dernière ligne remplie est automatiquement créé par click sur une commandbutton vers la feuille2 du classeur puis par une deuxième commandbutton, une seconde macro me créé: premièrement une sauvegarde sur le réseau de mon entreprise, du fichier excel puis me génère un PDF au travers de PDFcreator. Une boite de dialogue (créée par un userform) s'ouvre alors, permettant à l'utilisateur de choisir d'ouvrir ou non ce fichier PDF.

mon soucis est que je ne parviens pas à lancer l'ouverture du fichier en cas de click sur "oui" dans cette boite de dialogue.

J'ai essayé différentes méthodes sans succès..

Je suis sur une solution de créer un lien hypertexte dans ma feuille mais je ne parviens pas ensuite à l'ouvrir: message d'erreur "impossible d'ouvrir le fichier spécifié"

Tout d'abord, pour résoudre le fait de créer à chaque fois de nouveau rapport PDF je suis partis sur le fait de trouver le dernier fichier créé:

Voici le code que j'utilise:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Function FindLastFile(Path As String)
 
   Dim fName As String
   Dim fDate As Date
 
    Dim fso
    Set fso = CreateObject("Scripting.FileSystemObject")
 
    Dim folder
    Set folder = fso.GetFolder(Path)
 
    Dim Files
    Set Files = folder.Files
 
    Dim File
    For Each File In Files
        If File.DateCreated > fDate Then
            fDate = File.DateCreated
            fName = File.Name
        End If
        Debug.Print File.Name, File.DateCreated, "=>", fName, fDate
    Next
 
    Set Files = Nothing
    Set folder = Nothing
    Set fso = Nothing
 
    FindLastFile = fName
 
End Function
 
'Ensuite, je l'utilise dans ma userform avec le code suivant:
 
Private Sub CommandButton1_Click()
' Créer lien hypertexte du rapport
Dim chemin As String
 
Range("z1").Select
 
chemin = "S:\Chemin\Dossier1\Dossier2\Rapports générés"
 
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:=FindLastFile(chemin)
 
   Unload Me
End Sub
N'ayant pas de code utilisable pour le moment, je ne suis pas parvenu à tester de code permettant ensuite l'ouverture de ce lien nouvellement créé

En espérant avoir été claire dans mes explications, quelqu'un aurait-il une solution s'il vous plaîiiiiiiiiiiiit?????

Merki!!