Peter a développé une macro qui supprime toutes les feuilles de calcul dans un classeur à l’exception d’un nommé «Index». Cette macro fonctionne très bien. Cependant, après avoir exécuté la macro, s’il ajoute une nouvelle feuille de calcul, il s’attend à ce qu’elle soit nommée «Sheet1» par défaut, mais il est en fait nommé un numéro ultérieur, tel que «Sheet3» ou «Sheet4». Peter se demande ce qui est nécessaire pour réinitialiser la numérotation des feuilles à la valeur par défaut attendue.

Le moyen le plus simple de réinitialiser la numérotation des feuilles consiste simplement à fermer le classeur et à l’ouvrir à nouveau. Cela implique cependant une étape manuelle de votre part. Si vous ajoutez les nouvelles feuilles de calcul via une macro, vous ne souhaitez probablement pas fermer et rouvrir manuellement le classeur.

Vous pouvez, si vous le souhaitez, créer une macro simple pour effectuer le processus de fermeture et de réouverture. Cela fonctionnera tant que la macro est stockée dans votre classeur de macros personnelles et non dans le classeur que vous fermez.

Sub Reopen()

Dim wb As Excel.Workbook     Dim sPath As String

Set wb = ThisWorkbook     sPath = wb.FullName

Application.OnTime Now + TimeValue("00:00:01"), _       Application.Workbooks.Open(sPth)

wb.Close (True)

End Sub

La macro détermine le nom du classeur actuel, puis définit un événement OnTime pour ouvrir le classeur 1 seconde à l’avenir. Pendant cette 1 seconde, cependant, le classeur est fermé et enregistré, ce qui lui permet d’être rouvert avec succès.

Vous pouvez, si vous le souhaitez, également choisir d’ajouter vos nouvelles feuilles de calcul via une macro.

La courte macro suivante ajoute une feuille de calcul, puis la renomme immédiatement avec le nom souhaité.

Sub AddWs()

Worksheets.Add after:=Sheets(Sheets.Count)

Sheets(Sheets.Count).Name = "Sheet" & Sheets.Count - 1 End Sub

Vous aurez envie de jouer avec ces solutions et de trouver celle qui convient le mieux à vos besoins, en particulier si vous souhaitez intégrer la solution avec une macro déjà existante.

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (6103) s’applique à Microsoft Excel 2007, 2010, 2013 et 2016.