Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Gestion d'une Erreur

  • Initiateur de la discussion Initiateur de la discussion seb.m
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

seb.m

Guest
Bonjour,

Je souhaiterais savoir comment gerer une Erreur

En rouge l'endroit ou ca plante Efectivement de temps en temps je peux avoir un nom de classeur erroné, je souhaiterais sortir de la Sub lorsque la macro plante


Voici mon code

Sub RecuperationKM()
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.FormulaR1C1 = ClasseurName
ActiveCell.Replace What:="CO04", Replacement:="DO01"
ActiveCell.Replace What:=".xls", Replacement:=".csv"
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.Offset(0, -1).Range("A1").Select
ClasseurKmName = ActiveCell.Value
ICI ca plante si le nom de classeur n'est pas bon
Application.Workbooks.Open Filename:="\\b660917\_IPEDATA\80001077\CSV\" & ClasseurKmName, ReadOnly:=True
Set wbkKm = ActiveWorkbook
Range("au38").Select
Selection.End(xlDown).Select
ActiveCell.Copy
Windows("Extraction Donnée STT.xls").Activate
ActiveSheet.Paste
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.FormulaR1C1 = _
"=RIGHT(RC[-1],LEN(RC[-1])-FIND(""*"",SUBSTITUTE(RC[-1],"" "",""*"",LEN(RC[-1])-LEN(SUBSTITUTE(RC[-1],"" "","""")))))"
Selection.Copy
ActiveCell.Offset(0, -1).Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveCell.Offset(0, 1).Range("A1").Select
Application.CutCopyMode = False
Selection.ClearContents
wbkKm.Close (False)
End Sub
 
Re : Gestion d'une Erreur

Bonjour Seb,

essaye avec la fonction "dir", un exemple ci-dessous :

Code:
Dim monclasseur As String
monclasseur = "C:\MesDocs\Excel\Test\test.xls"
If Dir(monclasseur, vbDirectory) <> "" Then
    Workbooks.Open monclasseur
Else
    MsgBox "classeur absent..."
    Exit Sub
End If

bonne journée
@+
 
Re : Gestion d'une Erreur

Bonjour,

Merci pour vos reponse n'ayant pas vu vos reponse avant j'ai fait ca qu'en pensé vous?

Sub RecuperationKM()
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.FormulaR1C1 = ClasseurName
ActiveCell.Replace What:="CO04", Replacement:="DO01"
ActiveCell.Replace What:=".xls", Replacement:=".csv"
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.Offset(0, -1).Range("A1").Select
ClasseurKmName = ActiveCell.Value
On Error Resume Next
Workbooks.OpenText Filename:="\\b660917\_IPEDATA\80001077\CSV\" & ClasseurKmName, DataType:=1, Semicolon:=True, local:=True
If Err <> 0 Then
Exit Sub
Else

Set wbkKm = ActiveWorkbook
Range("ax38").Select
Selection.End(xlDown).Select
ActiveCell.Copy
Windows("Extraction Donnée STT.xls").Activate
ActiveSheet.Paste
Application.CutCopyMode = False
wbkKm.Close (False)
End If

End Sub
 
Re : Gestion d'une Erreur

Re, bonjour Masterdisco

je le ferais peut être ainsi alors :

Code:
On Error Resume Next
Workbooks.OpenText Filename:="\\b660917\_IPEDATA\80001077\CSV\" & ClasseurKmName, DataType:=1, Semicolon:=True, local:=True
If Err <> 0 Then Exit Sub
On Error GoTo 0
'suite de ton code

"On Error GoTo 0" permet de désactiver la gestion d'erreur, car avec cette ligne "On Error Resume Next" ton code continuerait même s'il rencontrerait d'autres erreurs...

Mais ma préférence va tout de même à la fonction "dir"....

bon après midi
@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
2
Affichages
398
Réponses
21
Affichages
2 K
Réponses
4
Affichages
688
J
  • Résolu(e)
Réponses
2
Affichages
589
JeromeR63
J
L
Réponses
9
Affichages
1 K
  • Question Question
Microsoft 365 Programme trop lent
Réponses
12
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…