Bonjour,

Je travail sur une importation automatique de données Excel dans un Projet MS Project et j'ai besoin de séléctionner mon fichier à importer via une boite de dialogue de type "File Dialog". Je ne connais pas vraiment le terme en Français mais j'ai essayé plusieurs solutions sans succès.

Je suis preneur de vos conseils,

Cdlt,



EDIT SOLUTION :
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
 
 
Declare Function GetOpenFileName _
Lib "comdlg32.dll" _
Alias "GetOpenFileNameA" _
(pOpenFileName As OPENFILENAME) _
As Boolean
 
Private Type OPENFILENAME
    lStructSize         As Long
    hwndOwner           As Long
    hInstance           As Long
    lpstrFilter         As String
    lpstrCustomFilter   As String
    nMaxCustFilter      As Long
    nFilterIndex        As Long
    lpstrFile           As String
    nMaxFile            As Long
    lpstrFileTitle      As String
    nMaxFileTitle       As Long
    lpstrInitialDir     As String
    lpstrTitle          As String
    flags               As Long
    nFileOffset         As Integer
    nFileExtension      As Integer
    lpstrDefExt         As String
    lCustData           As Long
    lpfnHook            As Long
    lpTemplateName      As String
End Type
 
Sub ImportEXCEL()
   Dim ProjectFile         As OPENFILENAME
Dim ProjectFileName     As String
 
 
With ProjectFile
 
    .hwndOwner = 0
    .hInstance = 0
    .lpstrFile = Space$(254)
    .nMaxFile = 255
    .lpstrFileTitle = Space$(254)
    .nMaxFileTitle = 255
    .lpstrInitialDir = Chr$(0)
    .flags = 0
    .lpstrTitle = "Select Project"
    .lpstrFilter = "Projects (*.xls*)" + Chr$(0) + "*.xls*" + Chr$(0)
 
    .lStructSize = Len(ProjectFile)
 
End With
 
If GetOpenFileName(ProjectFile) Then _
ProjectFileName = Trim$(ProjectFile.lpstrFile)
 
 MsgBox ProjectFileName
 
End Sub