Bonsoir, je suis débutant en VBA, et je dois améliorer un programme.

J'ai cherché un peu partout, mais honnêtement j'ai pas trouver, j'ai tester "shell", les liens hypertextes... J'ai bidouillé dans tout les sens.

Mon problème est que l'ancien programme permet d'ouvrir et d'importer des données et d'ouvrir autocad, à partir de la commande : "Application.GetOpenFilename()", mais qui permet de choisir le fichier.
Moi je ne veux pas laisser le choix à l'utilisateur.

Autre problème, il faut que la commande mette en oeuvre un lien relatif car le dossier contenant mon fichier excel et mon fichier autocad doivent pouvoir être déplacés.

Voici mon code actuel qui marcher mais qui ne fait pas ce que je voudrai :
La ligne en question : Fichier = Application.GetOpenFilename("fichier DWG (*.dwg), *.dwg", , "G:\LP CAO DAO\PROJET D'ENTREPRISE")
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
Option Explicit
Public AcadObj As Object
Public AcadDoc As Object
Public AcadUtil As Object
Public AcadEspaceObj As Object
Public Fichier As String
 
Public ListeObjetDessinAutocad(10) As Object
Public ListeNomDessinAutocad(10) As String
Public NombreDessinAutocad As Integer
 
 
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'''''''''''''''''''''''''''''''''''''''''''LANCEMENT EXPORTATION
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Sub LancerExportation()
 
Sheets("Divers").Unprotect
 
    Fichier = Application.GetOpenFilename("fichier DWG (*.dwg), *.dwg", , "G:\LP CAO DAO\PROJET D'ENTREPRISE")
    'Fichier = Application.GetFile("G:\LP CAO DAO\PROJET D'ENTREPRISE\gabarit.dwg")
    'Fichier = Shell("gabarit.dwg")
 
 
 
    If Fichier = "Faux" Then
        Sheets("Divers").Protect
        Exit Sub
    Else
        Sheets("Divers").Cells(LigneLibreFichier, 7).Value = Fichier
        Sheets("Divers").Select
        Sheets("Divers").Range("D3:E1500").Select
        Sheets("Travail").Select
 
        InitialiserExport
    End If
 
Sheets("Divers").Protect
 
End Sub
Merci à vous.
Cordialement.