J'ai du code ici (ci-dessous) dont j'ai besoin de vider les données dans la feuille de calcul "Data Entry", il peut y avoir d'autres moyens plus rapides pour le faire, mais j'ai choisi de supprimer et de recréer. N'hésitez pas à dire si ce n'est pas le cas.
Private Sub CommandButton1_Click()
Dim DataEntryWs As Worksheet
For i = Worksheets.Count To 1 Step -1
If Worksheets(i).Name = "Data Entry" Then
Application.DisplayAlerts = False
Worksheets("Data Entry").Delete
MsgBox ("Feuille supprimée")
Set DataEntryWs = ThisWorkbook.Sheets.Add(After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))
DataEntryWs.Name = "Data Entry"
Call Data_Entry_Calcs
Else
If i = Worksheets.Count Then
MsgBox ("Ajout de nouvelles feuilles maintenant")
Set DataEntryWs = ThisWorkbook.Sheets.Add(After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))
DataEntryWs.Name = "Data Entry"
Call Data_Entry_Calcs
Else
End If
End If
Next i
Call Data_Entry_Calcs
End Sub
Chaque fois que j'exécute le code, si la feuille nommée "Data Entry" est présente, lorsque le code arrive à cette ligne Worksheets("Data Entry").Delete
, le code s'arrête et ne continue pas. Pourquoi en est-il ainsi? Cela me dérange depuis un certain temps maintenant.
J'ai essayé d'exécuter la boucle For
à la fois en avant et en arrière pour voir si cela faisait une différence, mais je n'ai eu aucun succès avec cela.