Bonjour à tous,
Petite question que un bout de macro que je n'arrive pas à exécuter...
Voilà ce que je veux faire. J'ai un bouton de remise à 0 dans un classeur excel qui efface toutes les données contenues dans les 2 onglets du classeur.
Avant d'effacer les données du deuxième onglet, je souhaite l'archiver dans ce même classeur, sous forme d'un onglet renommé à la date du jour.
Problème : si j'exécute plusieurs fois dans la journée la macro de remise à 0, excel n'arrive pas à archiver une 2ème fois l'onglet car le classeur en contient déjà un du même nom.
Pour palier à ce problème, j'ai inséré dans le code des conditions et une petite boucle de traitement :
Et là, 2ème problème : la fonction "Is Nothing" (qui doit me permettre de tester l'existence d'un onglet) ne semble pas fonctionner. En effet, excel me dit que l'onglet "Saisie des chèques-0" & Jour & "-0" & Mois & "-" & Année & " (1)" n'existe pas (l'indice n'appartient pas à la sélection), alors que c'est justement ce que je veux qu'il teste!!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Worksheets("Saisie des chèques").Select Worksheets("Saisie des chèques").Copy Before:=Sheets(2) Worksheets("Saisie des chèques (2)").Select If Worksheets("Saisie des chèques-0" & Jour & "-0" & Mois & "-" & Année & " (1)") Is Nothing Then Worksheets("Saisie des chèques (2)").Name = "Saisie des chèques-0" & Jour & "-0" & Mois & "-" & Année & " (1)" Else For j = 2 To 10 If Worksheets("Saisie des chèques-0" & Jour & "-0" & Mois & "-" & Année & " (" & j & ")") Is Nothing Then Worksheets("Saisie des chèques (2)").Name = "Saisie des chèques-0" & Jour & "-0" & Mois & "-" & Année & " (" & j & ")" End If Next j End If
Auriez-vous une solution?
PS : les variables "jour", "mois" et "année" contiennent respectivement le jour, le mois et l'année courants.
PS2 : j'ai pensé à effectuer une gestion d'erreur, mais je ne vois pas trop comment faire (je débute en VBA)...
Partager