Bonjour,
j'ai cr=E9e sous XL2000 (environnement Win2000)une=20
application constitu=E9e de 2 classeurs (on est sur un=20
r=E9seau). Le premier s'appelle Tables.xls et ne contient=20
que des donn=E9es. Le 2=E8me s'appelle Interface.xls et sert =E0=20
rappatrier des donn=E9es depuis Tables.xls et =E9galement =E0 en=20
envoyer. Lorsqu'un utilisateur veut utiliser mon appli, il=20
ouvre Inteface.xls et pilote ainsi l'application, suivant=20
les fonctionnalit=E9s d=E9velopp=E9es. Voil=E0 le probl=E8me : j'ai=20
parfois besoin (pour des raisons de maintenance) d'ouvrir=20
directement Tables.xls et de travailler dessus. Si =E0 ce=20
moment l=E0 un utilisateur ouvre Interface.xls et lance une=20
fonctionnalit=E9, le classeur plante (ca parait normal). Je=20
souhaiterais donc mettre en place une proc=E9dure qui=20
interdit a un utilisateur d'utiliser (voire d'ouvrir)=20
Interface si je suis en train de bosser sur Tables. Avez-
vous une id=E9e??
Merci d'avance pour votre aide (et bon week-end)
Cyrille
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
Alain CROS
Bonjour
Cette fonction placée dans Interface.xls , appelée dans Workbook_Open avec comme paramètre le nom complet de Table.xls (nom + chemin) devrait convenir.
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 End Select End Function
Alain CROS
"Cyrille" a écrit dans le message de news: 300801c4a23f$dfff8200$ Bonjour, j'ai crée sous XL2000 (environnement Win2000)une application constituée de 2 classeurs (on est sur un réseau). Le premier s'appelle Tables.xls et ne contient que des données. Le 2ème s'appelle Interface.xls et sert à rappatrier des données depuis Tables.xls et également à en envoyer. Lorsqu'un utilisateur veut utiliser mon appli, il ouvre Inteface.xls et pilote ainsi l'application, suivant les fonctionnalités développées. Voilà le problème : j'ai parfois besoin (pour des raisons de maintenance) d'ouvrir directement Tables.xls et de travailler dessus. Si à ce moment là un utilisateur ouvre Interface.xls et lance une fonctionnalité, le classeur plante (ca parait normal). Je souhaiterais donc mettre en place une procédure qui interdit a un utilisateur d'utiliser (voire d'ouvrir) Interface si je suis en train de bosser sur Tables. Avez- vous une idée?? Merci d'avance pour votre aide (et bon week-end) Cyrille
Bonjour
Cette fonction placée dans Interface.xls , appelée dans Workbook_Open avec comme paramètre le nom complet de Table.xls (nom +
chemin) devrait convenir.
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
End Select
End Function
Alain CROS
"Cyrille" <anonymous@discussions.microsoft.com> a écrit dans le message de news: 300801c4a23f$dfff8200$a601280a@phx.gbl...
Bonjour,
j'ai crée sous XL2000 (environnement Win2000)une
application constituée de 2 classeurs (on est sur un
réseau). Le premier s'appelle Tables.xls et ne contient
que des données. Le 2ème s'appelle Interface.xls et sert à
rappatrier des données depuis Tables.xls et également à en
envoyer. Lorsqu'un utilisateur veut utiliser mon appli, il
ouvre Inteface.xls et pilote ainsi l'application, suivant
les fonctionnalités développées. Voilà le problème : j'ai
parfois besoin (pour des raisons de maintenance) d'ouvrir
directement Tables.xls et de travailler dessus. Si à ce
moment là un utilisateur ouvre Interface.xls et lance une
fonctionnalité, le classeur plante (ca parait normal). Je
souhaiterais donc mettre en place une procédure qui
interdit a un utilisateur d'utiliser (voire d'ouvrir)
Interface si je suis en train de bosser sur Tables. Avez-
vous une idée??
Merci d'avance pour votre aide (et bon week-end)
Cyrille
Cette fonction placée dans Interface.xls , appelée dans Workbook_Open avec comme paramètre le nom complet de Table.xls (nom + chemin) devrait convenir.
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 End Select End Function
Alain CROS
"Cyrille" a écrit dans le message de news: 300801c4a23f$dfff8200$ Bonjour, j'ai crée sous XL2000 (environnement Win2000)une application constituée de 2 classeurs (on est sur un réseau). Le premier s'appelle Tables.xls et ne contient que des données. Le 2ème s'appelle Interface.xls et sert à rappatrier des données depuis Tables.xls et également à en envoyer. Lorsqu'un utilisateur veut utiliser mon appli, il ouvre Inteface.xls et pilote ainsi l'application, suivant les fonctionnalités développées. Voilà le problème : j'ai parfois besoin (pour des raisons de maintenance) d'ouvrir directement Tables.xls et de travailler dessus. Si à ce moment là un utilisateur ouvre Interface.xls et lance une fonctionnalité, le classeur plante (ca parait normal). Je souhaiterais donc mettre en place une procédure qui interdit a un utilisateur d'utiliser (voire d'ouvrir) Interface si je suis en train de bosser sur Tables. Avez- vous une idée?? Merci d'avance pour votre aide (et bon week-end) Cyrille
Philippe.R
Bonsoir Cyrille, Regarde de ce côté : http://frederic.sigonneau.free.fr/code/Feuilles/ClasseurPartageOuvert.txt tu devrais pouvoir adapter le code à ton cas -- Amicales Salutations XL 97 / 2000 / 2002 Retirer A_S_ pour répondre en privé. Préférez suivre facilement sur le forum : news://msnews.microsoft.com/microsoft.public.fr.excel (Voulez-vous vous abonner ? -> Oui)
"Cyrille" a écrit dans le message de news:300801c4a23f$dfff8200$ Bonjour, j'ai crée sous XL2000 (environnement Win2000)une application constituée de 2 classeurs (on est sur un réseau). Le premier s'appelle Tables.xls et ne contient que des données. Le 2ème s'appelle Interface.xls et sert à rappatrier des données depuis Tables.xls et également à en envoyer. Lorsqu'un utilisateur veut utiliser mon appli, il ouvre Inteface.xls et pilote ainsi l'application, suivant les fonctionnalités développées. Voilà le problème : j'ai parfois besoin (pour des raisons de maintenance) d'ouvrir directement Tables.xls et de travailler dessus. Si à ce moment là un utilisateur ouvre Interface.xls et lance une fonctionnalité, le classeur plante (ca parait normal). Je souhaiterais donc mettre en place une procédure qui interdit a un utilisateur d'utiliser (voire d'ouvrir) Interface si je suis en train de bosser sur Tables. Avez- vous une idée?? Merci d'avance pour votre aide (et bon week-end) Cyrille
Bonsoir Cyrille,
Regarde de ce côté :
http://frederic.sigonneau.free.fr/code/Feuilles/ClasseurPartageOuvert.txt
tu devrais pouvoir adapter le code à ton cas
--
Amicales Salutations
XL 97 / 2000 / 2002
Retirer A_S_ pour répondre en privé.
Préférez suivre facilement sur le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)
"Cyrille" <anonymous@discussions.microsoft.com> a écrit dans le message de
news:300801c4a23f$dfff8200$a601280a@phx.gbl...
Bonjour,
j'ai crée sous XL2000 (environnement Win2000)une
application constituée de 2 classeurs (on est sur un
réseau). Le premier s'appelle Tables.xls et ne contient
que des données. Le 2ème s'appelle Interface.xls et sert à
rappatrier des données depuis Tables.xls et également à en
envoyer. Lorsqu'un utilisateur veut utiliser mon appli, il
ouvre Inteface.xls et pilote ainsi l'application, suivant
les fonctionnalités développées. Voilà le problème : j'ai
parfois besoin (pour des raisons de maintenance) d'ouvrir
directement Tables.xls et de travailler dessus. Si à ce
moment là un utilisateur ouvre Interface.xls et lance une
fonctionnalité, le classeur plante (ca parait normal). Je
souhaiterais donc mettre en place une procédure qui
interdit a un utilisateur d'utiliser (voire d'ouvrir)
Interface si je suis en train de bosser sur Tables. Avez-
vous une idée??
Merci d'avance pour votre aide (et bon week-end)
Cyrille
Bonsoir Cyrille, Regarde de ce côté : http://frederic.sigonneau.free.fr/code/Feuilles/ClasseurPartageOuvert.txt tu devrais pouvoir adapter le code à ton cas -- Amicales Salutations XL 97 / 2000 / 2002 Retirer A_S_ pour répondre en privé. Préférez suivre facilement sur le forum : news://msnews.microsoft.com/microsoft.public.fr.excel (Voulez-vous vous abonner ? -> Oui)
"Cyrille" a écrit dans le message de news:300801c4a23f$dfff8200$ Bonjour, j'ai crée sous XL2000 (environnement Win2000)une application constituée de 2 classeurs (on est sur un réseau). Le premier s'appelle Tables.xls et ne contient que des données. Le 2ème s'appelle Interface.xls et sert à rappatrier des données depuis Tables.xls et également à en envoyer. Lorsqu'un utilisateur veut utiliser mon appli, il ouvre Inteface.xls et pilote ainsi l'application, suivant les fonctionnalités développées. Voilà le problème : j'ai parfois besoin (pour des raisons de maintenance) d'ouvrir directement Tables.xls et de travailler dessus. Si à ce moment là un utilisateur ouvre Interface.xls et lance une fonctionnalité, le classeur plante (ca parait normal). Je souhaiterais donc mettre en place une procédure qui interdit a un utilisateur d'utiliser (voire d'ouvrir) Interface si je suis en train de bosser sur Tables. Avez- vous une idée?? Merci d'avance pour votre aide (et bon week-end) Cyrille