Bonjour Wilfried, Nychko, le Forum
Voici une manière que nous avions développée en commun sur le MPFE avec Frédéric Sigonneau et El Joker.
Le principe est simple on utilise un fichier "Interface" contenant ces codes, afin de lancer le fichier voulu...
Option Explicit
Function IsFileOpen(FileName As String)
Dim FileNum As Integer, ErrNum As Integer
On Error Resume Next
FileNum = FreeFile()
Open FileName For Input Lock Read As #FileNum
Close FileNum
ErrNum = Err
On Error GoTo 0
Select Case ErrNum
Case 0
IsFileOpen = False
Case 70
IsFileOpen = True
Case Else
Error ErrNum
End Select
End Function
Il suffit de joindre cette Function à une Macro du style suivant dans un fichier "Interface" (Perso.xls, par exemple) pour lancer le fichier :
Sub CallDemandCiti()
If IsFileOpen("I:\MC_Prod\Cash\Commun_Tools\Demand\Demand.xls") Then
MsgBox "Demand Program is already in use" + vbCritical, "PROGRAM NOT AVAILABLE"
Else
Workbooks.Open "I:\MC_Prod\Cash\Commun_Tools\Demand\Demand.xls"
End If
Bon Après Midi
@+Thierry