VBA Savoir si quelqu'un utilise fichier Excel
Fermé
Thomas8080
Messages postés
15
Date d'inscription
mardi 7 juillet 2009
Statut
Membre
Dernière intervention
16 juin 2012
-
8 juil. 2009 à 18:44
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 9 juil. 2009 à 09:47
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 9 juil. 2009 à 09:47
A voir également:
- Comment savoir qui a ouvert un fichier excel
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Cette action ne peut pas être réalisée car le fichier est ouvert dans system - Guide
- Liste déroulante excel - Guide
- Comment ouvrir un fichier epub ? - Guide
3 réponses
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
9 juil. 2009 à 09:47
9 juil. 2009 à 09:47
Bonjour,
Trouvé chez Frederic SIgonneau
http://frederic.sigonneau.free.fr/code/Fichiers/DetruireTousFichiersDossier.txt
Etant en monoposte, je ne puis tester, donc....
Trouvé chez Frederic SIgonneau
http://frederic.sigonneau.free.fr/code/Fichiers/DetruireTousFichiersDossier.txt
Function IsFileOpen(filename As String) 'auteur inconnu, mpep Dim filenum As Integer, errnum As Integer On Error Resume Next ' Turn error checking off. filenum = FreeFile() ' Get a free file number. ' Attempt to open the file and lock it. Open filename For Input Lock Read As #filenum Close filenum ' Close the file. errnum = Err ' Save the error number that occurred. On Error GoTo 0 ' Turn error checking back on. ' Check to see which error occurred. Select Case errnum ' No error occurred. ' File is NOT already open by another user. Case 0 IsFileOpen = False ' Error number for "Permission Denied." ' File is already opened by another user. Case 70 IsFileOpen = True ' Another error occurred, file is being queried. Case Else Error errnum End Select End Function
Etant en monoposte, je ne puis tester, donc....
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
8 juil. 2009 à 19:58
8 juil. 2009 à 19:58
bonsoir,
cette fonction te renvoie 'true" si le classeur est ouvert
Function FichOuvert(F As String) As Boolean
'Auteur: Didier_mdf (merci) site INCONTOURNABLE :http://www.mdf-xlpages.com/
Dim Wk As Workbook
On Error Resume Next
Set Wk = Workbooks(F)
On Error GoTo 0
FichOuvert = Not Wk Is Nothing
End Function
F est le fullname du classeur
cette fonction te renvoie 'true" si le classeur est ouvert
Function FichOuvert(F As String) As Boolean
'Auteur: Didier_mdf (merci) site INCONTOURNABLE :http://www.mdf-xlpages.com/
Dim Wk As Workbook
On Error Resume Next
Set Wk = Workbooks(F)
On Error GoTo 0
FichOuvert = Not Wk Is Nothing
End Function
F est le fullname du classeur
Thomas8080
Messages postés
15
Date d'inscription
mardi 7 juillet 2009
Statut
Membre
Dernière intervention
16 juin 2012
8 juil. 2009 à 20:43
8 juil. 2009 à 20:43
Bonsoir et merci beaucoup pour votre suggestion. Malheureusement le problème reste! Je dois passer le nom du fichier en variable et cela empêche la macro de fonctionner. De plus la fonction regarde sur "mes" classeur pour voir s'ils sont ouvert alors que, l'utilisateur qui pourrait avoir ouvert le fichier, n'est pas sur le même ordi!
Merci quand même
*****************
J'ai, entretemps, trouvé un bout de fonction
Private Function EstDansCollection(Coln As Object, Item As String) As Boolean
Dim obj As Object
On Error Resume Next
Set obj = Coln(Item)
EstDansCollection = Not obj Is Nothing
End Function
mais le problème ici est que la valeur qui passe la fontion doit être en claire et pas sous forme de variable!
Merci à tous.
J'attends vos lumières
Merci quand même
*****************
J'ai, entretemps, trouvé un bout de fonction
Private Function EstDansCollection(Coln As Object, Item As String) As Boolean
Dim obj As Object
On Error Resume Next
Set obj = Coln(Item)
EstDansCollection = Not obj Is Nothing
End Function
mais le problème ici est que la valeur qui passe la fontion doit être en claire et pas sous forme de variable!
Merci à tous.
J'attends vos lumières