Bonjour ,j'ai réussi à trouver un code qui permet d'importer des données d'un fichier source à un fichier destination .Le principe est le suivant j'ai mon fichier source dont la trajectoire est connue et qui comporte 3 feuilles ,avec ce code je peux copier juste les données de la feuille 2(main report) et les coller dans mon fichier destination (extraction PLM).Actuellement mon souhait c'est de ne pas figer le nom de fichier source vu qu'on pt avoir plusieurs fichiers dans cette trajectoire ,c'est à dire je souhaite avoir une boite de dialogue qui s'ouvre directement après avoir lancé la macro sur le lien du fichier et qui me permettra de choisir le fichier source avant d'exécuter le reste des opérations. Y-a-t-il un moyen d'adapter ce code à faire ça?
VB:
Sub ImportDonnées()
' Variables objet pour le classeur et feuille source
Dim WbkS As Workbook, ShtS As Worksheet
' Autre variables
Dim sPath As String, sFic As String
Dim dLigS As Long
' Définir le chemin d'accès
sPath = "\\Yvshn001\WZ0_SFTP\VELIZY\GAPE\00_Process_System\Project_Analysis\\"
' Définir le fichier source à ouvrir
sFic = "P64_PLI-BOM-GAPE-01 CPV extraction Report x22POROx22.xlsx"
' Ouvrir le fichier source et définir le classeur
Set WbkS = Workbooks.Open(sPath & sFic)
' Définir la feuille de travail
Set ShtS = WbkS.Sheets("Main report") ' Attention au nom de la feuille
' Dernière ligne remplie de la feuille source
dlig = ShtS.Range("A" & Rows.count).End(xlUp).Row
' Copier / coller les données
ShtS.Range("A1:AD" & dlig).Copy Destination:=ThisWorkbook.Sheets("Extraction PLM").Range("A6")
' Fermer le classeur source sans sauvegarder
WbkS.Close Savechanges:=False
' Libérer les variables objet
Set ShtS = Nothing: Set WbkS = Nothing
Sheets("Extraction PLM").Activate
MsgBox "Données PLM importées avec succès"
End Sub