tester si fichier ouvert...

romainchu78

XLDnaute Occasionnel
bonjour a tous,
avec les codes suivant je peux recuperer le chemin et le nom du fichier a tester. Je souhaiterais a l'aide d'une macro tester si un autre fichier est ouvert dans le meme repertoire. cad a partir de mon fichier principale charger le nom et le chemin dun autre fichier a charger (data.txt), ensuite tester si un fichier avec le meme nom mais avec l'extension xls est ouvert (data.xls).

FileToOpenCAB1_path = Application.GetOpenFilename("Fichiers texte (*.txt), *.txt") 'On preleve le chemin d'acces du fichier a charger EX: C:\data\tab.txt

FileToOpenCAB1_repert = Mid(ThisWorkbook.FullName, 1, InStr(1, ThisWorkbook.FullName, ThisWorkbook.Name, 1) - 1) 'On preleve le repertoire du fichier principale EX: C:\data\

FileToOpenCAB1_long = Mid(FileToOpenCAB1_path, InStrRev(FileToOpenCAB1_path, "\") + 1)
FileToOpenCAB1_court = Left(FileToOpenCAB1_long, InStrRev(FileToOpenCAB1_long, ".") - 1)
' EX: tab.txt and tab

FileToOpenCAB1_xls = FileToOpenCAB1_repert & FileToOpenCAB1_court & ".xls"
' EX: C:\data\tab.xls

La question que je veux coder est? Est ce que le fichier avec le nom tab.xls est actuellement ouvert?
 
Dernière édition:

Hervé

XLDnaute Barbatruc
Re : tester si fichier ouvert...

bonjour

peut etre comme ceci :

Code:
FileToOpenCAB1_path = Application.GetOpenFilename("Fichiers texte (*.xls), *.xls") 'On preleve le chemin d'acces du fichier a charger

FileToOpenCAB1_repert = Mid(ThisWorkbook.FullName, 1, InStr(1, ThisWorkbook.FullName, ThisWorkbook.Name, 1) - 1) 'On preleve le repertoire du fichier principale

FileToOpenCAB1_long = Mid(FileToOpenCAB1_path, InStrRev(FileToOpenCAB1_path, "\") + 1)
FileToOpenCAB1_court = Left(FileToOpenCAB1_long, InStrRev(FileToOpenCAB1_long, ".") - 1)

FileToOpenCAB1_xls = FileToOpenCAB1_repert & FileToOpenCAB1_court & ".xls"

FileToOpenCAB1_xls_long = FileToOpenCAB1_xls & ".xls"

If ouvertfichier(FileToOpenCAB1_xls) = True Then
    MsgBox "Fichier ouvert"
Else
    MsgBox "fichier fermé"
End If

End Sub
Code:
Private Function ouvertfichier(ByVal nom As String) As Boolean

On Error Resume Next
ouvertfichier = Not Workbooks(nom) Is Nothing
End Function
d'apres un code de Maitre Ti

salut
 

Discussions similaires

Réponses
1
Affichages
296
Compte Supprimé 979
C
Réponses
36
Affichages
1 K

Statistiques des forums

Discussions
312 198
Messages
2 086 146
Membres
103 130
dernier inscrit
FRCRUNGR