Bonjour,
Essaie ce code :
Sub Test()
Dim wbX As Workbook
Select Case Application.Workbooks.Count
Case 2
For Each wbX In Application.Workbooks
If wbX.Name <> ThisWorkbook.Name Then Exit For
Next wbX
Case 1
MsgBox "Le classeur recherché n'est pas ouvert.", vbInformation, "Classeur manquant"
Exit Sub
Case Else
MsgBox "Plus de deux classeurs sont ouverts.", vbInformation, "Classeur non identifié"
Exit Sub
End Select
MsgBox wbX.Name
End Sub
Cette macro teste le nombre de classeurs ouverts, s'il n'y en a qu'un ou plus de 2, elle le signale et s'interrompt. S'il y en a 2, elle teste lequel a un autre nom que le sien...
Le dernier MsgBox est juste destiné à tester le fonctionnement de la macro (à supprimer pour la suite) : à l'issue de ce code, tu disposes du classeur recherché affecté à une variable objet Workbook (wbX) que tu peux continuer à utiliser dans la suite de ton code pour désigner le classeur X.
NB- Les classeurs doivent être ouverts dans la même instance d'Excel, sinon ils ne se verraient pas...
Cordialement.