Quand ce classeur est ouvert sur un autre poste de travail cela me
donne une erreur.
Comment passer outre ou mieux comment r=E9cup=E9rer le code d'erreur pour
en d=E9duire un avertissement =E0 l'utilisateur par exemple ?
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
Youky
Set shtFeuille = GetObject(strChemin & "" & _ strFichierSource).Sheets(strFeuilleSource) On Error Resume Next shtFeuille.Copy after:= ActiveWorkbook.Sheets(ActiveWorkbook.Sheets.Count) If Err<>0 then Err=0 MsgBox "Le fichier est en cours d'utilisation....!....bye bye!": Exit sub End If 'et la suite si c'est bon Youky
"Le Nordiste" a écrit dans le message de news: Bonjour tertous,
Dans une procédure je recopie une page d'un classeur non partagé grace au code suivant :
Set shtFeuille = GetObject(strChemin & "" & strFichierSource).Sheets(strFeuilleSource)
Quand ce classeur est ouvert sur un autre poste de travail cela me donne une erreur. Comment passer outre ou mieux comment récupérer le code d'erreur pour en déduire un avertissement à l'utilisateur par exemple ?
Merci de vous intéresser à mon probléme.
Le Nordiste.
Set shtFeuille = GetObject(strChemin & "" & _
strFichierSource).Sheets(strFeuilleSource)
On Error Resume Next
shtFeuille.Copy after:= ActiveWorkbook.Sheets(ActiveWorkbook.Sheets.Count)
If Err<>0 then
Err=0
MsgBox "Le fichier est en cours d'utilisation....!....bye bye!": Exit sub
End If
'et la suite si c'est bon
Youky
"Le Nordiste" <jean-paul.bataille@cegetel.fr> a écrit dans le message de
news: 1144143037.580082.122620@j33g2000cwa.googlegroups.com...
Bonjour tertous,
Dans une procédure je recopie une page d'un classeur non partagé
grace au code suivant :
Set shtFeuille = GetObject(strChemin & "" &
strFichierSource).Sheets(strFeuilleSource)
Quand ce classeur est ouvert sur un autre poste de travail cela me
donne une erreur.
Comment passer outre ou mieux comment récupérer le code d'erreur pour
en déduire un avertissement à l'utilisateur par exemple ?
Set shtFeuille = GetObject(strChemin & "" & _ strFichierSource).Sheets(strFeuilleSource) On Error Resume Next shtFeuille.Copy after:= ActiveWorkbook.Sheets(ActiveWorkbook.Sheets.Count) If Err<>0 then Err=0 MsgBox "Le fichier est en cours d'utilisation....!....bye bye!": Exit sub End If 'et la suite si c'est bon Youky
"Le Nordiste" a écrit dans le message de news: Bonjour tertous,
Dans une procédure je recopie une page d'un classeur non partagé grace au code suivant :
Set shtFeuille = GetObject(strChemin & "" & strFichierSource).Sheets(strFeuilleSource)
Quand ce classeur est ouvert sur un autre poste de travail cela me donne une erreur. Comment passer outre ou mieux comment récupérer le code d'erreur pour en déduire un avertissement à l'utilisateur par exemple ?
Merci de vous intéresser à mon probléme.
Le Nordiste.
michdenis
Bonjour Le nordiste,
Évidemment la feuille que tu tentes de copier doit exister la procédure ne teste pas directement son existence !
'--------------------------------------- Sub test()
Dim Wk As Workbook Dim strChemin As String Dim strFichierSource As String Dim strFeuilleSource As String
On Error Resume Next Set Wk = Workbooks(strFichierSource) If Not Wk Is Nothing Then Err = 0 MsgBox "Ce fichier est déjà ouvert." Else Application.ScreenUpdating = False With Workbooks.Open(strChemin & "" & strFichierSource) .Sheets(strFeuilleSource).Copy after:= _ ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count) .Close False End With End If
End Sub '---------------------------------------
Salutations!
"Le Nordiste" a écrit dans le message de news:
Bonjour tertous,
Dans une procédure je recopie une page d'un classeur non partagé grace au code suivant :
Set shtFeuille = GetObject(strChemin & "" & strFichierSource).Sheets(strFeuilleSource)
Quand ce classeur est ouvert sur un autre poste de travail cela me donne une erreur. Comment passer outre ou mieux comment récupérer le code d'erreur pour en déduire un avertissement à l'utilisateur par exemple ?
Merci de vous intéresser à mon probléme.
Le Nordiste.
Bonjour Le nordiste,
Évidemment la feuille que tu tentes de copier doit exister
la procédure ne teste pas directement son existence !
'---------------------------------------
Sub test()
Dim Wk As Workbook
Dim strChemin As String
Dim strFichierSource As String
Dim strFeuilleSource As String
On Error Resume Next
Set Wk = Workbooks(strFichierSource)
If Not Wk Is Nothing Then
Err = 0
MsgBox "Ce fichier est déjà ouvert."
Else
Application.ScreenUpdating = False
With Workbooks.Open(strChemin & "" & strFichierSource)
.Sheets(strFeuilleSource).Copy after:= _
ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
.Close False
End With
End If
End Sub
'---------------------------------------
Salutations!
"Le Nordiste" <jean-paul.bataille@cegetel.fr> a écrit dans le message de news:
1144143037.580082.122620@j33g2000cwa.googlegroups.com...
Bonjour tertous,
Dans une procédure je recopie une page d'un classeur non partagé
grace au code suivant :
Set shtFeuille = GetObject(strChemin & "" &
strFichierSource).Sheets(strFeuilleSource)
Quand ce classeur est ouvert sur un autre poste de travail cela me
donne une erreur.
Comment passer outre ou mieux comment récupérer le code d'erreur pour
en déduire un avertissement à l'utilisateur par exemple ?
On Error Resume Next Set Wk = Workbooks(strFichierSource) If Not Wk Is Nothing Then Err = 0 MsgBox "Ce fichier est déjà ouvert." Else Application.ScreenUpdating = False With Workbooks.Open(strChemin & "" & strFichierSource) .Sheets(strFeuilleSource).Copy after:= _ ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count) .Close False End With End If
End Sub '---------------------------------------
Salutations!
"Le Nordiste" a écrit dans le message de news:
Bonjour tertous,
Dans une procédure je recopie une page d'un classeur non partagé grace au code suivant :
Set shtFeuille = GetObject(strChemin & "" & strFichierSource).Sheets(strFeuilleSource)
Quand ce classeur est ouvert sur un autre poste de travail cela me donne une erreur. Comment passer outre ou mieux comment récupérer le code d'erreur pour en déduire un avertissement à l'utilisateur par exemple ?