OVH Cloud OVH Cloud

Gestion des erreurs par fonction

21 réponses
Avatar
J aimerais chunter les messages d erreur dans le code
suivant et rajouter du code si la fonction filecopy s est
bien deroulee. Est ce possible ???

Dim Ctl As Control
For Each Ctl In Me.Controls
If Ctl.ControlType = acCheckBox Then

FileCopy "\\stationcs\c$\silvercs9\specif.pl", "\\" &
Ctl.Name & "\c$\silvercs9\"
FileCopy "\\stationcs\c$\silvercs9\specif.pl", "\\" &
Ctl.Name & "\d$\silvercs9\"
FileCopy "\\stationcs\c$\silvercs9\specif.pl", "\\" &
Ctl.Name & "\e$\silvercs9\"

End If
Next Ctl

Merci d avance

10 réponses

1 2 3
Avatar
Raymond [mvp]
Bonjour.

Tu peux déjà tester les erreurs de chemin par la gestion standard:

On Error GoTo Err_Filecopy
Dim Ctl As Control
For Each Ctl In Me.Controls
If Ctl.ControlType = acCheckBox Then
FileCopy "stationcsc$silvercs9specif.pl", "" & Ctl.Name &
"c$silvercs9"
FileCopy "stationcsc$silvercs9specif.pl", "" & Ctl.Name &
"d$silvercs9"
FileCopy "stationcsc$silvercs9specif.pl", "" & Ctl.Name &
"e$silvercs9"
End If
Next Ctl
Exit Sub
Err_Filecopy:
'ici la gestion de l'erreur.
MsgBox "erreur"


--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


a écrit dans le message de
news:a0b101c47938$2e452770$
J aimerais chunter les messages d erreur dans le code
suivant et rajouter du code si la fonction filecopy s est
bien deroulee. Est ce possible ???

Dim Ctl As Control
For Each Ctl In Me.Controls
If Ctl.ControlType = acCheckBox Then

FileCopy "stationcsc$silvercs9specif.pl", "" &
Ctl.Name & "c$silvercs9"
FileCopy "stationcsc$silvercs9specif.pl", "" &
Ctl.Name & "d$silvercs9"
FileCopy "stationcsc$silvercs9specif.pl", "" &
Ctl.Name & "e$silvercs9"

End If
Next Ctl

Merci d avance


Avatar
Oui je sais mais en fait le probleme vient du faitque
justement, je ne veux pas gerer l erreur mais seulement le
cas ou ca se passe bien. En cas d erreur, j aimerais que
le programe continue sans l afiicher.

Merci pour ta réponse rapide

-----Message d'origine-----
Bonjour.

Tu peux déjà tester les erreurs de chemin par la gestion
standard:


On Error GoTo Err_Filecopy
Dim Ctl As Control
For Each Ctl In Me.Controls
If Ctl.ControlType = acCheckBox Then
FileCopy "stationcsc$silvercs9
specif.pl", "" & Ctl.Name &

"c$silvercs9"
FileCopy "stationcsc$silvercs9
specif.pl", "" & Ctl.Name &

"d$silvercs9"
FileCopy "stationcsc$silvercs9
specif.pl", "" & Ctl.Name &

"e$silvercs9"
End If
Next Ctl
Exit Sub
Err_Filecopy:
'ici la gestion de l'erreur.
MsgBox "erreur"


--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


Avatar
Raymond [mvp]
dans ce cas, tu mets On Error Resume Next et après chaque ligne tu testes
s'il y a erreur. si erreur tu continue et si pas erreur tu affiches un
message par exemple.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


a écrit dans le message de
news:9f2201c4793b$3b9bbcb0$
Oui je sais mais en fait le probleme vient du faitque
justement, je ne veux pas gerer l erreur mais seulement le
cas ou ca se passe bien. En cas d erreur, j aimerais que
le programe continue sans l afiicher.

Merci pour ta réponse rapide
Avatar
Merci ...
J arrive pas a tester si la fonction est en erreur ou pas.

-----Message d'origine-----
dans ce cas, tu mets On Error Resume Next et après chaque
ligne tu testes

s'il y a erreur. si erreur tu continue et si pas erreur
tu affiches un

message par exemple.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


a écrit dans le
message de

news:9f2201c4793b$3b9bbcb0$
Oui je sais mais en fait le probleme vient du faitque
justement, je ne veux pas gerer l erreur mais seulement le
cas ou ca se passe bien. En cas d erreur, j aimerais que
le programe continue sans l afiicher.

Merci pour ta réponse rapide


.



Avatar
Raymond [mvp]
Tu peux faire ceci:
On Error Resume Next
FileCopy "stationcsc$silvercs9specif.pl", "" & .......
If Err.Number = 0 Then MsgBox "copie réalisée"
FileCopy "stationcsc$silvercs9specif.pl", "" &.........
If Err.Number = 0 Then MsgBox "copie réalisée"
FileCopy "stationcsc$silvercs9specif.pl", "" & .........
If Err.Number = 0 Then MsgBox "copie réalisée"
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


a écrit dans le message de
news:a18501c47945$270a0950$
Merci ...
J arrive pas a tester si la fonction est en erreur ou pas.
Avatar
J ai deja essaye mais le err.number ne fonctionne pas en
dehors d une erreur, le programme ne passe jamais dans le
If.

-----Message d'origine-----
Tu peux faire ceci:
On Error Resume Next
FileCopy "stationcsc$silvercs9specif.pl", ""
& .......

If Err.Number = 0 Then MsgBox "copie réalisée"
FileCopy "stationcsc$silvercs9specif.pl", ""
&.........

If Err.Number = 0 Then MsgBox "copie réalisée"
FileCopy "stationcsc$silvercs9specif.pl", ""
& .........

If Err.Number = 0 Then MsgBox "copie réalisée"
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


Avatar
J ai deja essaye mais le err.number ne fonctionne pas en
dehors d une erreur, le programme ne passe jamais dans le
If.

-----Message d'origine-----
Tu peux faire ceci:
On Error Resume Next
FileCopy "stationcsc$silvercs9specif.pl", ""
& .......

If Err.Number = 0 Then MsgBox "copie réalisée"
FileCopy "stationcsc$silvercs9specif.pl", ""
&.........

If Err.Number = 0 Then MsgBox "copie réalisée"
FileCopy "stationcsc$silvercs9specif.pl", ""
& .........

If Err.Number = 0 Then MsgBox "copie réalisée"
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


Avatar
Raymond [mvp]
si, si , le err.number peut être interrogé , si tu indiques
FileCopy "stationcsc$silvercs9specif.pl", "" & .......
If Err.Number = 0 Then MsgBox "copie réalisée"
et si la copie est réalisée, le if est bien exécuté ainsi que le msgbox.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


a écrit dans le message de
news:a1fa01c4794d$38dd33c0$
J ai deja essaye mais le err.number ne fonctionne pas en
dehors d une erreur, le programme ne passe jamais dans le
If.
Avatar
Eric
Bonjour,

Tu me surprends là

Essaies ca :
Sub TestErreur1()
On Error Resume Next
Dim a As Integer, b As Integer, c as Long
a = 100: b = 200
c = a / b
If Err.Number = 0 Then MsgBox "OK"
End Sub

puis :
Sub TestErreur2()
On Error Resume Next
Dim a As Integer, b As Integer, c as Long
a = 100: ' b = 200
c = a / b
If Err.Number <> 0 Then MsgBox Err.Description
End Sub

A+
Eric

écrivait news:a04401c4794d$328ef990
$:

J ai deja essaye mais le err.number ne fonctionne pas en
dehors d une erreur, le programme ne passe jamais dans le
If.

-----Message d'origine-----
Tu peux faire ceci:
On Error Resume Next
FileCopy "stationcsc$silvercs9specif.pl", ""
& .......

If Err.Number = 0 Then MsgBox "copie réalisée"
FileCopy "stationcsc$silvercs9specif.pl", ""
&.........

If Err.Number = 0 Then MsgBox "copie réalisée"
FileCopy "stationcsc$silvercs9specif.pl", ""
& .........

If Err.Number = 0 Then MsgBox "copie réalisée"
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum






Avatar
Eric
.../...
lire c as Double

suis pas reveillé ;-)
Eric

Eric écrivait
news::
Bonjour,

Tu me surprends là

Essaies ca :
Sub TestErreur1()
On Error Resume Next
Dim a As Integer, b As Integer, c as Long
a = 100: b = 200
c = a / b
If Err.Number = 0 Then MsgBox "OK"
End Sub

puis :
Sub TestErreur2()
On Error Resume Next
Dim a As Integer, b As Integer, c as Long
a = 100: ' b = 200
c = a / b
If Err.Number <> 0 Then MsgBox Err.Description
End Sub

A+
Eric

écrivait news:a04401c4794d
$328ef990

$:

J ai deja essaye mais le err.number ne fonctionne pas en
dehors d une erreur, le programme ne passe jamais dans le
If.

-----Message d'origine-----
Tu peux faire ceci:
On Error Resume Next
FileCopy "stationcsc$silvercs9specif.pl", "" & .......
If Err.Number = 0 Then MsgBox "copie réalisée"
FileCopy "stationcsc$silvercs9specif.pl", "" &.........
If Err.Number = 0 Then MsgBox "copie réalisée"
FileCopy "stationcsc$silvercs9specif.pl", "" & .........
If Err.Number = 0 Then MsgBox "copie réalisée" -- @+
Raymond Access MVP http://access.seneque.free.fr/
http://access.vba.free.fr/ http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum










1 2 3