Chaque utilisateur possede un fichier test.xls et chacun de ces
fichiers doit acceder a un seul et unique fichier nomm=E9 essai.xls.
Un seul utilisateur doit pouvoir l'ouvrir et les autres doivent etre en
attente si le fichier est ouvert.
Voici mon code:
Function IsFileOpen(filename As String)
Dim filenum As Integer, errnum As Integer
On Error Resume Next
filenum =3D FreeFile()
Open filename For Input Lock Read As #filenum
Close filenum
errnum =3D Err
On Error GoTo 0
Select Case errnum
Case 0
IsFileOpen =3D False
Case 70
IsFileOpen =3D True
Case Else
Error errnum
End Select
End Function
Sub Ouvrir()
While IsFileOpen("E:\essai.xls")
ActiveSheet.Label2.Visible =3D True
Wend
ActiveSheet.Label2.Visible =3D False
Workbooks.Open "E:\essai.xls"
End Sub
mon code fonctionne bien s'il n'y a que 2 utilisateurs, mais s'il y en
a 3, un utilisateur arrive a ouvrir le fichier et un autre l'ouvre
aussi mais en lecture seule, je souhaiterais que cet utilisateur soit
en attente, qu'il n'ouvre pas le fichier en lecture seule.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Yo
Personne ne peut m'aider ? :(
Bonjour,
Voici mon probleme:
Chaque utilisateur possede un fichier test.xls et chacun de ces fichiers doit acceder a un seul et unique fichier nommé essai.xls. Un seul utilisateur doit pouvoir l'ouvrir et les autres doivent etre en attente si le fichier est ouvert.
Voici mon code:
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
Sub Ouvrir() While IsFileOpen("E:essai.xls") ActiveSheet.Label2.Visible = True Wend ActiveSheet.Label2.Visible = False Workbooks.Open "E:essai.xls" End Sub
mon code fonctionne bien s'il n'y a que 2 utilisateurs, mais s'il y en a 3, un utilisateur arrive a ouvrir le fichier et un autre l'ouvre aussi mais en lecture seule, je souhaiterais que cet utilisateur soit en attente, qu'il n'ouvre pas le fichier en lecture seule.
Quelqu'un aurait il une suggestion ?
Merci.
Cordialement.
Personne ne peut m'aider ? :(
Bonjour,
Voici mon probleme:
Chaque utilisateur possede un fichier test.xls et chacun de ces
fichiers doit acceder a un seul et unique fichier nommé essai.xls.
Un seul utilisateur doit pouvoir l'ouvrir et les autres doivent etre en
attente si le fichier est ouvert.
Voici mon code:
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
Sub Ouvrir()
While IsFileOpen("E:essai.xls")
ActiveSheet.Label2.Visible = True
Wend
ActiveSheet.Label2.Visible = False
Workbooks.Open "E:essai.xls"
End Sub
mon code fonctionne bien s'il n'y a que 2 utilisateurs, mais s'il y en
a 3, un utilisateur arrive a ouvrir le fichier et un autre l'ouvre
aussi mais en lecture seule, je souhaiterais que cet utilisateur soit
en attente, qu'il n'ouvre pas le fichier en lecture seule.
Chaque utilisateur possede un fichier test.xls et chacun de ces fichiers doit acceder a un seul et unique fichier nommé essai.xls. Un seul utilisateur doit pouvoir l'ouvrir et les autres doivent etre en attente si le fichier est ouvert.
Voici mon code:
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
Sub Ouvrir() While IsFileOpen("E:essai.xls") ActiveSheet.Label2.Visible = True Wend ActiveSheet.Label2.Visible = False Workbooks.Open "E:essai.xls" End Sub
mon code fonctionne bien s'il n'y a que 2 utilisateurs, mais s'il y en a 3, un utilisateur arrive a ouvrir le fichier et un autre l'ouvre aussi mais en lecture seule, je souhaiterais que cet utilisateur soit en attente, qu'il n'ouvre pas le fichier en lecture seule.
Quelqu'un aurait il une suggestion ?
Merci.
Cordialement.
JFrancois QC
Bonjour Yo, Dans les applications multi usagers que j'ai développé j'utilise des fichiers « flag» qui m'indiquent si les fichiers son occupé et par qui: Lorsque qu'on veut ouvrir un fichier 1- vérifie la présence du fichier flag ex: le flag de tot.o.xls est toto.occ résidant dans le même dossier.
si toto.occ - un fichier texte - est présent je prend connaisance de son contenu et j'avise l'usager refoulé avec un msgbox.
sinon je crée le flag toto.occ et ouvre le document toto.xls
2-à la fermeture de toto.xls on n'oublie pas de supprimer le flag
Espérant que ça puisse t'aider p.s. une des applications fonctionnant ainsi le fait depuis une dizaine d'année
Bonjour,
Voici mon probleme:
Chaque utilisateur possede un fichier test.xls et chacun de ces fichiers doit acceder a un seul et unique fichier nommé essai.xls. Un seul utilisateur doit pouvoir l'ouvrir et les autres doivent etre en attente si le fichier est ouvert.
Voici mon code:
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
Sub Ouvrir() While IsFileOpen("E:essai.xls") ActiveSheet.Label2.Visible = True Wend ActiveSheet.Label2.Visible = False Workbooks.Open "E:essai.xls" End Sub
mon code fonctionne bien s'il n'y a que 2 utilisateurs, mais s'il y en a 3, un utilisateur arrive a ouvrir le fichier et un autre l'ouvre aussi mais en lecture seule, je souhaiterais que cet utilisateur soit en attente, qu'il n'ouvre pas le fichier en lecture seule.
Quelqu'un aurait il une suggestion ?
Merci.
Cordialement.
Bonjour Yo,
Dans les applications multi usagers que j'ai développé j'utilise des
fichiers « flag»
qui m'indiquent si les fichiers son occupé et par qui:
Lorsque qu'on veut ouvrir un fichier
1- vérifie la présence du fichier flag ex: le flag de tot.o.xls est toto.occ
résidant dans le même dossier.
si toto.occ - un fichier texte - est présent je prend connaisance de son
contenu et j'avise l'usager refoulé avec un msgbox.
sinon je crée le flag toto.occ et ouvre le document toto.xls
2-à la fermeture de toto.xls on n'oublie pas de supprimer le flag
Espérant que ça puisse t'aider
p.s. une des applications fonctionnant ainsi le fait depuis une dizaine
d'année
Bonjour,
Voici mon probleme:
Chaque utilisateur possede un fichier test.xls et chacun de ces
fichiers doit acceder a un seul et unique fichier nommé essai.xls.
Un seul utilisateur doit pouvoir l'ouvrir et les autres doivent etre en
attente si le fichier est ouvert.
Voici mon code:
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
Sub Ouvrir()
While IsFileOpen("E:essai.xls")
ActiveSheet.Label2.Visible = True
Wend
ActiveSheet.Label2.Visible = False
Workbooks.Open "E:essai.xls"
End Sub
mon code fonctionne bien s'il n'y a que 2 utilisateurs, mais s'il y en
a 3, un utilisateur arrive a ouvrir le fichier et un autre l'ouvre
aussi mais en lecture seule, je souhaiterais que cet utilisateur soit
en attente, qu'il n'ouvre pas le fichier en lecture seule.
Bonjour Yo, Dans les applications multi usagers que j'ai développé j'utilise des fichiers « flag» qui m'indiquent si les fichiers son occupé et par qui: Lorsque qu'on veut ouvrir un fichier 1- vérifie la présence du fichier flag ex: le flag de tot.o.xls est toto.occ résidant dans le même dossier.
si toto.occ - un fichier texte - est présent je prend connaisance de son contenu et j'avise l'usager refoulé avec un msgbox.
sinon je crée le flag toto.occ et ouvre le document toto.xls
2-à la fermeture de toto.xls on n'oublie pas de supprimer le flag
Espérant que ça puisse t'aider p.s. une des applications fonctionnant ainsi le fait depuis une dizaine d'année
Bonjour,
Voici mon probleme:
Chaque utilisateur possede un fichier test.xls et chacun de ces fichiers doit acceder a un seul et unique fichier nommé essai.xls. Un seul utilisateur doit pouvoir l'ouvrir et les autres doivent etre en attente si le fichier est ouvert.
Voici mon code:
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
Sub Ouvrir() While IsFileOpen("E:essai.xls") ActiveSheet.Label2.Visible = True Wend ActiveSheet.Label2.Visible = False Workbooks.Open "E:essai.xls" End Sub
mon code fonctionne bien s'il n'y a que 2 utilisateurs, mais s'il y en a 3, un utilisateur arrive a ouvrir le fichier et un autre l'ouvre aussi mais en lecture seule, je souhaiterais que cet utilisateur soit en attente, qu'il n'ouvre pas le fichier en lecture seule.