Comme ceci (avec des infos glanées ici et ailleurs), est-ce que ça répond à la question . A+
Dim testouvert As Integer
Sub essai1()
Dim FileName As String, fichier As String
FileName = Application.GetOpenFilename("Classeurs Excel(*.xls*),*.xls*, Macros complémentaires (*.xla),*.xla")
MsgBox "Vous avez-sélectionné : " & FileName, vbInformation, "Illustration - GetOpenFilename"
If FileName = "Faux" Or FileName = "" Then MsgBox ("Aucun fichier sélectionné"): Exit Sub
For i = Len(FileName) To 1 Step -1
If Mid(FileName, i, 1) = "\" Then
fichier = Right(FileName, (Len(FileName) - i))
i = 1
End If
Next i
Call FichierOuvert(fichier)
If testouvert = 0 Then MsgBox ("fichier ouvert"): Exit Sub
Workbooks.Open FileName:=FileName
'End If
End Sub
Function FichierOuvert(fic As String)
On Error Resume Next
Set FichierOuvert = Workbooks(fic)
testouvert = Err
End Function