Copie et utilisation classeur

L

lezabour

Guest
Salut a tous,
j'ai un classeur Test.xls, qui est partagé. pour cette raison, j'ai suivi les conseils que l'on peut retrouver a cette adresse http://dj.joss.free.fr/reso.htm
et j'ai donc un "complement" qui comprend tout mon code VBA, appellé test.xla

Bref, j'aimerai en fait que lors de la 1ere ouverture de la journée (en clair lorsque je suis le seul a ouvrir le fichier test.xls et que personne d'autre ne l'utilise), copier une feuille appeller Infos1 vers une feuille appellée Infos2

Pour cela j'ai utiliser differentes fonctions:

'Renvoi vrai si le fichier est en cours d'utilisation
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

Ainsi qu'une petite macro de copie faite par mes soins!
Dans le thisworkbook je met
Private Sub Workbook_Open()
If Not IsFileOpen(ActiveWorkbook.Path & "/Test.xls") Then
Copie
MsgBox "On copie"
Else
MsgBox "Utiliser"
End If
End Sub


Le probleme, est que en fait, le fichier est tjrs en cours d'utilisation, vu que je l'ouvre...
Comment verifier que je suis le seul a utiliser le fichier sur le reseau? Ou comment mieux adapter mon code pour que cela fonctionne?

Merci a tous!
 

Discussions similaires

Réponses
19
Affichages
2 K

Statistiques des forums

Discussions
311 723
Messages
2 081 934
Membres
101 844
dernier inscrit
pktla