Bonsoir,
J’ai écrit un code qui fonctionne très bien, mais seulement sans gestion d’erreur.
Quand j’insère la ligne de la gestion d’erreur "On Error GoTo DoublonDeNomDeFeuil", même quand il n’y a pas d’erreur le code de la gestion d’erreur est exécuté.
Où mettre cette ligne de gestion d’erreur pour qu’elle ne se déclenche que lorsqu’il y a réellement erreur ?
L’erreur arrive en principe en ligne 14, parce qu’il rencontre un nom identique. Je voudrais qu’à ce niveau-là il lance la gestion d’erreur.
Merci d’avance pour vos solutions.
voici le code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 Sub CreateNewDailySheet() Dim MaDate As Date MaDate = Date Dim RepMsg RepMsg = MsgBox(Application.UserName & "," & vbCr & "Vous allez créer une nouvelle feuille avec le comme nom, la date d'aujourd'hui." & _ vbCr & "Voulez-vous continuer?", vbYesNo, "Rasta Bomboclat - Daily Cash Position") If RepMsg = vbNo Then Exit Sub Else: On Error GoTo DoublonDeNomDeFeuil ActiveSheet.Select ActiveSheet.Copy after:=Sheets(Sheets.Count) ActiveSheet.Name = Format(MaDate, "dd-mmm-yyyy") UpdateGrafico End If DoublonDeNomDeFeuil: If MsgBox(Application.UserName & "," & vbCr & "Il existe deja une feuille avec comme nom, la date d'aujourd'hui." & vbCr & _ "L'application va créer un indice du type '(x)' après le nome de la feuille" & vbCr & "Voulez-vous continuer", vbCritical + vbYesNo, "Rasta Bomboclat - Doublon nom de feuille!") = vbNo Then Application.DisplayAlerts = False ActiveSheet.Delete Application.DisplayAlerts = True Else: ActiveSheet.Name = Format(MaDate, "dd-mmm-yyyy") UpdateGrafico End If End Sub
Partager