Bonjour,

Je souhaiterais pouvoir supprimer les feuilles que j'ai sélectionné dans mon userform dont voici le code :
Cela ne fonctionne pas correctement. Il y a un décalage entre les feuilles sélectionnées et les feuilles supprimées.


Merci d'avance


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
28
29
30
31
32
33
34
Sub UserForm_Initialize()
 
'--- Déclaration des variables
Dim Feuille As Worksheet
 
'--- Génération de la liste des onglets
  With ListBox1
    .MultiSelect = fmMultiSelectExtended
    .Clear
    For Each Feuille In Sheets
        .AddItem Feuille.Name
    Next
End With
 
End Sub
'Action quand on clique sur le Bouton
Private Sub CommandButton2_Click()
'--- Déclaration des variables
Dim i As Integer
Dim Feuille() As Variant
Dim NbFeuille As Integer
'--- Impression des onglets sélectionnés
 With ListBox1
    For i = 0 To .ListCount - 1
      If .Selected(i) Then
        ReDim Preserve Feuille(NbFeuille)
        Feuille(NbFeuille) = .List(i)
        NbFeuille = NbFeuille + 1
        Application.DisplayAlerts = False
        Sheets(i).Delete
      End If
    Next i
  Unload Me
End Sub