J'ai fait une application que plusieurs employ=E9s utilisent=20
(pas la m=EAme, mais chacun la sienne).
Cependant, en cliquant sur un bouton de commande,=20
l'information inscrite se transpose dans une fili=E8re=20
maitresse, qui celle-l=E0 est la m=EAme pour tout le monde.
Les instructions font que Excel ouvre la "Master File" et=20
y copie les donn=E9es. Sauf que si 2 employ=E9s transf=E8rent=20
les donn=E9es en m=EAme temps, celui qui arrive en second=20
re=E7oit une message d'erreur d'Excel car il ne peut ouvrir=20
le Master File, =E9tant d=E9j=E2 ouvert par un autre usager.
Je me demandais quelle instruction mettre afin que si le=20
Master File est d=E9j=E0 ouvert, d'ignorer les commades=20
suivantes.... Est-ce que On error resume next peut faire=20
l'affaire...
Voici une partie du code...
Sub Trsf()
Workbooks.Open Filename:=3D"W:\MFRP Tax Slips\2004=20
Tax Slips\Master File\MF-T4RSP.xls"
Windows("T4RSP.xls").Activate
Sheets("Database").Select
Range("A3:AC3").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Cut
Windows("MF-T4RSP.xls").Activate
Range("A2").Select
etc......
end sub
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
papou
Bonjour Denys Si ce que tu appelles ouvre le Master File correspond à la ligne : Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls" alors : On Error Resume Next Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls" If Err Then Exit Sub
Cordialement Pascal
"Denys" a écrit dans le message de news:229e01c3fc6d$da685010$ Bonjour à tous,
J'ai fait une application que plusieurs employés utilisent (pas la même, mais chacun la sienne).
Cependant, en cliquant sur un bouton de commande, l'information inscrite se transpose dans une filière maitresse, qui celle-là est la même pour tout le monde.
Les instructions font que Excel ouvre la "Master File" et y copie les données. Sauf que si 2 employés transfèrent les données en même temps, celui qui arrive en second reçoit une message d'erreur d'Excel car il ne peut ouvrir le Master File, étant déjâ ouvert par un autre usager.
Je me demandais quelle instruction mettre afin que si le Master File est déjà ouvert, d'ignorer les commades suivantes.... Est-ce que On error resume next peut faire l'affaire...
Voici une partie du code...
Sub Trsf() Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls" Windows("T4RSP.xls").Activate Sheets("Database").Select Range("A3:AC3").Select Range(Selection, Selection.End(xlDown)).Select Selection.Cut Windows("MF-T4RSP.xls").Activate Range("A2").Select etc...... end sub
Merci pour votre aide...
Denys
Bonjour Denys
Si ce que tu appelles ouvre le Master File correspond à la ligne :
Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster
FileMF-T4RSP.xls"
alors :
On Error Resume Next
Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster
FileMF-T4RSP.xls"
If Err Then Exit Sub
Cordialement
Pascal
"Denys" <anonymous@discussions.microsoft.com> a écrit dans le message de
news:229e01c3fc6d$da685010$a501280a@phx.gbl...
Bonjour à tous,
J'ai fait une application que plusieurs employés utilisent
(pas la même, mais chacun la sienne).
Cependant, en cliquant sur un bouton de commande,
l'information inscrite se transpose dans une filière
maitresse, qui celle-là est la même pour tout le monde.
Les instructions font que Excel ouvre la "Master File" et
y copie les données. Sauf que si 2 employés transfèrent
les données en même temps, celui qui arrive en second
reçoit une message d'erreur d'Excel car il ne peut ouvrir
le Master File, étant déjâ ouvert par un autre usager.
Je me demandais quelle instruction mettre afin que si le
Master File est déjà ouvert, d'ignorer les commades
suivantes.... Est-ce que On error resume next peut faire
l'affaire...
Voici une partie du code...
Sub Trsf()
Workbooks.Open Filename:="W:MFRP Tax Slips2004
Tax SlipsMaster FileMF-T4RSP.xls"
Windows("T4RSP.xls").Activate
Sheets("Database").Select
Range("A3:AC3").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Cut
Windows("MF-T4RSP.xls").Activate
Range("A2").Select
etc......
end sub
Bonjour Denys Si ce que tu appelles ouvre le Master File correspond à la ligne : Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls" alors : On Error Resume Next Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls" If Err Then Exit Sub
Cordialement Pascal
"Denys" a écrit dans le message de news:229e01c3fc6d$da685010$ Bonjour à tous,
J'ai fait une application que plusieurs employés utilisent (pas la même, mais chacun la sienne).
Cependant, en cliquant sur un bouton de commande, l'information inscrite se transpose dans une filière maitresse, qui celle-là est la même pour tout le monde.
Les instructions font que Excel ouvre la "Master File" et y copie les données. Sauf que si 2 employés transfèrent les données en même temps, celui qui arrive en second reçoit une message d'erreur d'Excel car il ne peut ouvrir le Master File, étant déjâ ouvert par un autre usager.
Je me demandais quelle instruction mettre afin que si le Master File est déjà ouvert, d'ignorer les commades suivantes.... Est-ce que On error resume next peut faire l'affaire...
Voici une partie du code...
Sub Trsf() Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls" Windows("T4RSP.xls").Activate Sheets("Database").Select Range("A3:AC3").Select Range(Selection, Selection.End(xlDown)).Select Selection.Cut Windows("MF-T4RSP.xls").Activate Range("A2").Select etc...... end sub
Merci pour votre aide...
Denys
Denys
Salut Pascal,
Merci infiniment....Tu m'enlèves une épine du pied...
Bonne journée
Denys
-----Original Message----- Bonjour Denys Si ce que tu appelles ouvre le Master File correspond à la ligne :
FileMF-T4RSP.xls" alors : On Error Resume Next Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster
FileMF-T4RSP.xls" If Err Then Exit Sub
Cordialement Pascal
"Denys" a écrit dans le message de
news:229e01c3fc6d$da685010$ Bonjour à tous,
J'ai fait une application que plusieurs employés utilisent (pas la même, mais chacun la sienne).
Cependant, en cliquant sur un bouton de commande, l'information inscrite se transpose dans une filière maitresse, qui celle-là est la même pour tout le monde.
Les instructions font que Excel ouvre la "Master File" et y copie les données. Sauf que si 2 employés transfèrent les données en même temps, celui qui arrive en second reçoit une message d'erreur d'Excel car il ne peut ouvrir le Master File, étant déjâ ouvert par un autre usager.
Je me demandais quelle instruction mettre afin que si le Master File est déjà ouvert, d'ignorer les commades suivantes.... Est-ce que On error resume next peut faire l'affaire...
Voici une partie du code...
Sub Trsf() Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls" Windows("T4RSP.xls").Activate Sheets("Database").Select Range("A3:AC3").Select Range(Selection, Selection.End(xlDown)).Select Selection.Cut Windows("MF-T4RSP.xls").Activate Range("A2").Select etc...... end sub
Merci pour votre aide...
Denys
.
Salut Pascal,
Merci infiniment....Tu m'enlèves une épine du pied...
Bonne journée
Denys
-----Original Message-----
Bonjour Denys
Si ce que tu appelles ouvre le Master File correspond à
la ligne :
FileMF-T4RSP.xls"
alors :
On Error Resume Next
Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax
SlipsMaster
FileMF-T4RSP.xls"
If Err Then Exit Sub
Cordialement
Pascal
"Denys" <anonymous@discussions.microsoft.com> a écrit
dans le message de
news:229e01c3fc6d$da685010$a501280a@phx.gbl...
Bonjour à tous,
J'ai fait une application que plusieurs employés utilisent
(pas la même, mais chacun la sienne).
Cependant, en cliquant sur un bouton de commande,
l'information inscrite se transpose dans une filière
maitresse, qui celle-là est la même pour tout le monde.
Les instructions font que Excel ouvre la "Master File" et
y copie les données. Sauf que si 2 employés transfèrent
les données en même temps, celui qui arrive en second
reçoit une message d'erreur d'Excel car il ne peut ouvrir
le Master File, étant déjâ ouvert par un autre usager.
Je me demandais quelle instruction mettre afin que si le
Master File est déjà ouvert, d'ignorer les commades
suivantes.... Est-ce que On error resume next peut faire
l'affaire...
Voici une partie du code...
Sub Trsf()
Workbooks.Open Filename:="W:MFRP Tax Slips2004
Tax SlipsMaster FileMF-T4RSP.xls"
Windows("T4RSP.xls").Activate
Sheets("Database").Select
Range("A3:AC3").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Cut
Windows("MF-T4RSP.xls").Activate
Range("A2").Select
etc......
end sub
FileMF-T4RSP.xls" alors : On Error Resume Next Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster
FileMF-T4RSP.xls" If Err Then Exit Sub
Cordialement Pascal
"Denys" a écrit dans le message de
news:229e01c3fc6d$da685010$ Bonjour à tous,
J'ai fait une application que plusieurs employés utilisent (pas la même, mais chacun la sienne).
Cependant, en cliquant sur un bouton de commande, l'information inscrite se transpose dans une filière maitresse, qui celle-là est la même pour tout le monde.
Les instructions font que Excel ouvre la "Master File" et y copie les données. Sauf que si 2 employés transfèrent les données en même temps, celui qui arrive en second reçoit une message d'erreur d'Excel car il ne peut ouvrir le Master File, étant déjâ ouvert par un autre usager.
Je me demandais quelle instruction mettre afin que si le Master File est déjà ouvert, d'ignorer les commades suivantes.... Est-ce que On error resume next peut faire l'affaire...
Voici une partie du code...
Sub Trsf() Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls" Windows("T4RSP.xls").Activate Sheets("Database").Select Range("A3:AC3").Select Range(Selection, Selection.End(xlDown)).Select Selection.Cut Windows("MF-T4RSP.xls").Activate Range("A2").Select etc...... end sub
Merci pour votre aide...
Denys
.
michdenis
Bonjour Denys,
Copie ceci dans un module standard et exécute la premièr macro.
"la fonction fut publiée ici et fut mise à jour à l'aide des MPFE suivants: ( El-Joker, Frédéric Sigonneau et Thierry Rural ) (je n'ai pas le nom de l'usager qui a requis cette macro)
'--------------------------------- Sub MacroÀExécuter() Dim Msg, Style, Title, Fichier as String Fichier:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls"
If IsFileOpen(Fichier) Then MsgBox "File Already in use" & Chr(13) & "Please Try Latter" Else Trsf End If End Sub '-------------------------------
Sub Trsf() Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls" Windows("T4RSP.xls").Activate Sheets("Database").Select Range("A3:AC3").Select Range(Selection, Selection.End(xlDown)).Select Selection.Cut Windows("MF-T4RSP.xls").Activate Range("A2").Select etc...... end sub '---------------------------------
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 '---------------------------------
Salutations!
"Denys" a écrit dans le message de news:229e01c3fc6d$da685010$ Bonjour à tous,
J'ai fait une application que plusieurs employés utilisent (pas la même, mais chacun la sienne).
Cependant, en cliquant sur un bouton de commande, l'information inscrite se transpose dans une filière maitresse, qui celle-là est la même pour tout le monde.
Les instructions font que Excel ouvre la "Master File" et y copie les données. Sauf que si 2 employés transfèrent les données en même temps, celui qui arrive en second reçoit une message d'erreur d'Excel car il ne peut ouvrir le Master File, étant déjâ ouvert par un autre usager. Sub Trsf() Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls" Windows("T4RSP.xls").Activate Sheets("Database").Select Range("A3:AC3").Select Range(Selection, Selection.End(xlDown)).Select Selection.Cut Windows("MF-T4RSP.xls").Activate Range("A2").Select etc...... end sub
Je me demandais quelle instruction mettre afin que si le Master File est déjà ouvert, d'ignorer les commades suivantes.... Est-ce que On error resume next peut faire l'affaire...
Voici une partie du code...
Merci pour votre aide...
Denys
Bonjour Denys,
Copie ceci dans un module standard et exécute la premièr macro.
"la fonction fut publiée ici et fut mise à jour à l'aide des MPFE suivants:
( El-Joker, Frédéric Sigonneau et Thierry Rural )
(je n'ai pas le nom de l'usager qui a requis cette macro)
'---------------------------------
Sub MacroÀExécuter()
Dim Msg, Style, Title, Fichier as String
Fichier:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls"
If IsFileOpen(Fichier) Then
MsgBox "File Already in use" & Chr(13) & "Please Try Latter"
Else
Trsf
End If
End Sub
'-------------------------------
Sub Trsf()
Workbooks.Open Filename:="W:MFRP Tax Slips2004
Tax SlipsMaster FileMF-T4RSP.xls"
Windows("T4RSP.xls").Activate
Sheets("Database").Select
Range("A3:AC3").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Cut
Windows("MF-T4RSP.xls").Activate
Range("A2").Select
etc......
end sub
'---------------------------------
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
'---------------------------------
Salutations!
"Denys" <anonymous@discussions.microsoft.com> a écrit dans le message de news:229e01c3fc6d$da685010$a501280a@phx.gbl...
Bonjour à tous,
J'ai fait une application que plusieurs employés utilisent
(pas la même, mais chacun la sienne).
Cependant, en cliquant sur un bouton de commande,
l'information inscrite se transpose dans une filière
maitresse, qui celle-là est la même pour tout le monde.
Les instructions font que Excel ouvre la "Master File" et
y copie les données. Sauf que si 2 employés transfèrent
les données en même temps, celui qui arrive en second
reçoit une message d'erreur d'Excel car il ne peut ouvrir
le Master File, étant déjâ ouvert par un autre usager.
Sub Trsf()
Workbooks.Open Filename:="W:MFRP Tax Slips2004
Tax SlipsMaster FileMF-T4RSP.xls"
Windows("T4RSP.xls").Activate
Sheets("Database").Select
Range("A3:AC3").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Cut
Windows("MF-T4RSP.xls").Activate
Range("A2").Select
etc......
end sub
Je me demandais quelle instruction mettre afin que si le
Master File est déjà ouvert, d'ignorer les commades
suivantes.... Est-ce que On error resume next peut faire
l'affaire...
Copie ceci dans un module standard et exécute la premièr macro.
"la fonction fut publiée ici et fut mise à jour à l'aide des MPFE suivants: ( El-Joker, Frédéric Sigonneau et Thierry Rural ) (je n'ai pas le nom de l'usager qui a requis cette macro)
'--------------------------------- Sub MacroÀExécuter() Dim Msg, Style, Title, Fichier as String Fichier:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls"
If IsFileOpen(Fichier) Then MsgBox "File Already in use" & Chr(13) & "Please Try Latter" Else Trsf End If End Sub '-------------------------------
Sub Trsf() Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls" Windows("T4RSP.xls").Activate Sheets("Database").Select Range("A3:AC3").Select Range(Selection, Selection.End(xlDown)).Select Selection.Cut Windows("MF-T4RSP.xls").Activate Range("A2").Select etc...... end sub '---------------------------------
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 '---------------------------------
Salutations!
"Denys" a écrit dans le message de news:229e01c3fc6d$da685010$ Bonjour à tous,
J'ai fait une application que plusieurs employés utilisent (pas la même, mais chacun la sienne).
Cependant, en cliquant sur un bouton de commande, l'information inscrite se transpose dans une filière maitresse, qui celle-là est la même pour tout le monde.
Les instructions font que Excel ouvre la "Master File" et y copie les données. Sauf que si 2 employés transfèrent les données en même temps, celui qui arrive en second reçoit une message d'erreur d'Excel car il ne peut ouvrir le Master File, étant déjâ ouvert par un autre usager. Sub Trsf() Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls" Windows("T4RSP.xls").Activate Sheets("Database").Select Range("A3:AC3").Select Range(Selection, Selection.End(xlDown)).Select Selection.Cut Windows("MF-T4RSP.xls").Activate Range("A2").Select etc...... end sub
Je me demandais quelle instruction mettre afin que si le Master File est déjà ouvert, d'ignorer les commades suivantes.... Est-ce que On error resume next peut faire l'affaire...
Voici une partie du code...
Merci pour votre aide...
Denys
Denys
Bonjour Denis,
Excellente idée.....Merci beaucoup...Petite question cependant... La fonction est-ce que je la mets dans un module ou sur la Feuille2 où elle doit s'exécuter ?
Je suis un peu mêlé avec les fonctions...
Merci encore pour ton aide
Denys
-----Original Message----- Bonjour Denys,
Copie ceci dans un module standard et exécute la premièr macro.
"la fonction fut publiée ici et fut mise à jour à l'aide des MPFE suivants:
( El-Joker, Frédéric Sigonneau et Thierry Rural ) (je n'ai pas le nom de l'usager qui a requis cette macro)
'--------------------------------- Sub MacroÀExécuter() Dim Msg, Style, Title, Fichier as String Fichier:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF- T4RSP.xls"
If IsFileOpen(Fichier) Then MsgBox "File Already in use" & Chr(13) & "Please Try Latter"
Else Trsf End If End Sub '-------------------------------
Sub Trsf() Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls" Windows("T4RSP.xls").Activate Sheets("Database").Select Range("A3:AC3").Select Range(Selection, Selection.End(xlDown)).Select Selection.Cut Windows("MF-T4RSP.xls").Activate Range("A2").Select etc...... end sub '---------------------------------
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 '---------------------------------
Salutations!
"Denys" a écrit dans le message de news:229e01c3fc6d$da685010
$
Bonjour à tous,
J'ai fait une application que plusieurs employés utilisent (pas la même, mais chacun la sienne).
Cependant, en cliquant sur un bouton de commande, l'information inscrite se transpose dans une filière maitresse, qui celle-là est la même pour tout le monde.
Les instructions font que Excel ouvre la "Master File" et y copie les données. Sauf que si 2 employés transfèrent les données en même temps, celui qui arrive en second reçoit une message d'erreur d'Excel car il ne peut ouvrir le Master File, étant déjâ ouvert par un autre usager. Sub Trsf() Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls" Windows("T4RSP.xls").Activate Sheets("Database").Select Range("A3:AC3").Select Range(Selection, Selection.End(xlDown)).Select Selection.Cut Windows("MF-T4RSP.xls").Activate Range("A2").Select etc...... end sub
Je me demandais quelle instruction mettre afin que si le Master File est déjà ouvert, d'ignorer les commades suivantes.... Est-ce que On error resume next peut faire l'affaire...
Voici une partie du code...
Merci pour votre aide...
Denys
.
Bonjour Denis,
Excellente idée.....Merci beaucoup...Petite question
cependant... La fonction est-ce que je la mets dans un
module ou sur la Feuille2 où elle doit s'exécuter ?
Je suis un peu mêlé avec les fonctions...
Merci encore pour ton aide
Denys
-----Original Message-----
Bonjour Denys,
Copie ceci dans un module standard et exécute la premièr
macro.
"la fonction fut publiée ici et fut mise à jour à l'aide
des MPFE suivants:
( El-Joker, Frédéric Sigonneau et Thierry Rural )
(je n'ai pas le nom de l'usager qui a requis cette macro)
'---------------------------------
Sub MacroÀExécuter()
Dim Msg, Style, Title, Fichier as String
Fichier:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-
T4RSP.xls"
If IsFileOpen(Fichier) Then
MsgBox "File Already in use" & Chr(13) & "Please Try
Latter"
Else
Trsf
End If
End Sub
'-------------------------------
Sub Trsf()
Workbooks.Open Filename:="W:MFRP Tax Slips2004
Tax SlipsMaster FileMF-T4RSP.xls"
Windows("T4RSP.xls").Activate
Sheets("Database").Select
Range("A3:AC3").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Cut
Windows("MF-T4RSP.xls").Activate
Range("A2").Select
etc......
end sub
'---------------------------------
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
'---------------------------------
Salutations!
"Denys" <anonymous@discussions.microsoft.com> a écrit
dans le message de news:229e01c3fc6d$da685010
$a501280a@phx.gbl...
Bonjour à tous,
J'ai fait une application que plusieurs employés utilisent
(pas la même, mais chacun la sienne).
Cependant, en cliquant sur un bouton de commande,
l'information inscrite se transpose dans une filière
maitresse, qui celle-là est la même pour tout le monde.
Les instructions font que Excel ouvre la "Master File" et
y copie les données. Sauf que si 2 employés transfèrent
les données en même temps, celui qui arrive en second
reçoit une message d'erreur d'Excel car il ne peut ouvrir
le Master File, étant déjâ ouvert par un autre usager.
Sub Trsf()
Workbooks.Open Filename:="W:MFRP Tax Slips2004
Tax SlipsMaster FileMF-T4RSP.xls"
Windows("T4RSP.xls").Activate
Sheets("Database").Select
Range("A3:AC3").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Cut
Windows("MF-T4RSP.xls").Activate
Range("A2").Select
etc......
end sub
Je me demandais quelle instruction mettre afin que si le
Master File est déjà ouvert, d'ignorer les commades
suivantes.... Est-ce que On error resume next peut faire
l'affaire...
Excellente idée.....Merci beaucoup...Petite question cependant... La fonction est-ce que je la mets dans un module ou sur la Feuille2 où elle doit s'exécuter ?
Je suis un peu mêlé avec les fonctions...
Merci encore pour ton aide
Denys
-----Original Message----- Bonjour Denys,
Copie ceci dans un module standard et exécute la premièr macro.
"la fonction fut publiée ici et fut mise à jour à l'aide des MPFE suivants:
( El-Joker, Frédéric Sigonneau et Thierry Rural ) (je n'ai pas le nom de l'usager qui a requis cette macro)
'--------------------------------- Sub MacroÀExécuter() Dim Msg, Style, Title, Fichier as String Fichier:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF- T4RSP.xls"
If IsFileOpen(Fichier) Then MsgBox "File Already in use" & Chr(13) & "Please Try Latter"
Else Trsf End If End Sub '-------------------------------
Sub Trsf() Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls" Windows("T4RSP.xls").Activate Sheets("Database").Select Range("A3:AC3").Select Range(Selection, Selection.End(xlDown)).Select Selection.Cut Windows("MF-T4RSP.xls").Activate Range("A2").Select etc...... end sub '---------------------------------
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 '---------------------------------
Salutations!
"Denys" a écrit dans le message de news:229e01c3fc6d$da685010
$
Bonjour à tous,
J'ai fait une application que plusieurs employés utilisent (pas la même, mais chacun la sienne).
Cependant, en cliquant sur un bouton de commande, l'information inscrite se transpose dans une filière maitresse, qui celle-là est la même pour tout le monde.
Les instructions font que Excel ouvre la "Master File" et y copie les données. Sauf que si 2 employés transfèrent les données en même temps, celui qui arrive en second reçoit une message d'erreur d'Excel car il ne peut ouvrir le Master File, étant déjâ ouvert par un autre usager. Sub Trsf() Workbooks.Open Filename:="W:MFRP Tax Slips2004 Tax SlipsMaster FileMF-T4RSP.xls" Windows("T4RSP.xls").Activate Sheets("Database").Select Range("A3:AC3").Select Range(Selection, Selection.End(xlDown)).Select Selection.Cut Windows("MF-T4RSP.xls").Activate Range("A2").Select etc...... end sub
Je me demandais quelle instruction mettre afin que si le Master File est déjà ouvert, d'ignorer les commades suivantes.... Est-ce que On error resume next peut faire l'affaire...