Voici comment obtenir le nom de fichier tel qu'il est affiché dans la barre de titre principale. Il s'agit du nom de fichier sans l'extension. Disons que mon classeur Excel s'appelle "ThisWorks.xlsx". Ce code renvoie "ThisWorks" sans l'extension de fichier.
Function OpenAppFileNames(ByVal exeName As String) As String
Dim p() As Process = System.Diagnostics.Process.GetProcessesByName(exeName)
Dim i As Integer = 0
Dim x As Integer = UBound(p) + 1
Dim Index As Long = 0
Dim Title As String = ""
Dim Result As String = ""
Debug.Print(x)
Do
If i = x Then
Exit Do
End If
Title = p(i).MainWindowTitle
Result += vbNewLine & "Index " & Index + i & " = " & Title
i = i + 1
'MsgBox(Result)
Loop Until i = x
Return Result
End Function
p renvoie un tableau d'entiers commençant à 0 (zéro). Si vous connaissez l'ordre des processus, vous pouvez retourner le Titre/Nom de fichier de la cible souhaitée.
J'espère que cela vous aidera... il m'a fallu 3 semaines pour trouver cette réponse.