Sub TestClasseurOuvert()
Dim Chemin$, Fichier$, Wks As Workbook
Application.ScreenUpdating = False
Chemin = ThisWorkbook.Path & "\Classeur2.xlsx"
Fichier = Mid(Chemin, InStrRev(Chemin, "\") + 1) 'Nom du classeur
'On test, pour commencer, si le fichier existe
If Dir(Chemin) <> "" Then
MsgBox "Le fichier " & Fichier & " existe"
Else
'S'il n'existe pas, on affiche un avertissement et on crée le classeur
MsgBox "Le fichier " & Fichier & " n'existe pas.", vbCritical, "ERREUR"
Set Wks = Workbooks.Add
Wks.SaveAs Chemin
ActiveWorkbook.Close True
MsgBox "Le fichier " & Fichier & " a été créé.", vbInformation, "SUCCESS"
Exit Sub
End If
'Ensuite on vérifie si il est ouvert
If FichOuvert(Fichier) Then
MsgBox "Le fichier " & Fichier & " est ouvert."
Else
MsgBox "Le fichier " & Fichier & " n'est pas ouvert."
End If
End Sub
Function FichOuvert(F As String) As Boolean
On Error Resume Next
FichOuvert = Not Workbooks(F) Is Nothing
End Function