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")
Merci à vous.
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
Cordialement.
Partager