Suppression de lignes

Bonjour,

J'ai crée un userform qui permet de supprimer une ligne, jusque là ça va =). Or les composants qui figure dans mon tableau possèdent un numéro donc quand la ligne est supprimée, il faut que le numéro des lignes d'après soit diminué de un sinon il y un trou.

J'ai donc fait une boucle for pour toutes les lignes en dessous de celle supprimée mais ça bloque systématiquement au bout de deux opérations et je ne sais pas pourquoi.

Voilà le code qui foire, qui se trouve dans le module de mon userform "compodelete" dans le fichier excel joint.

Private Sub OK_Click()
Dim Nombre As Long
        Nombre = Range("D10").Value

        ActiveSheet.Unprotect

        Sheets(Range("B" & 12 + num_compo.Value).Value).Delete
        Rows(12 + num_compo.Value & ":" & 12 + num_compo.Value).Select
        Selection.Delete Shift:=xlUp

        For i = 0 To (Nombre - (num_compo.Value + 1))
        Range("A" & 12 + num_compo.Value + i) = Range("A" & 12 + num_compo.Value + i) - 1
        Sheets(Range("B" & 12 + num_compo.Value + i).Value).Select
        ActiveSheet.Unprotect
        Range("B1").Formula = " TECHNICAL QUOTATION SHEET " & Sheets("Project").Range("A" & 12 + num_compo.Value + i).Value & ""
        ProtectionFeuille
        Next

        With Sheets("Project")
        .Range("D10") = Nombre - 1
        .Range("B13").Select
        End With

        ProtectionFeuille

        Unload Me

End Sub

Voilà pour tester vous ajouter les composants un par un avec Add a component quand vous voulez en supprimer un, l'userform se lance.

Si vous trouvez la bêtise, je serai bien aidé! Merci beaucoup beaucoup!

12fchierforumvba.zip (77.99 Ko)

Bonjour

A tester

Hello,

encore une fois merci, ça change tout mais au moins ça marche impec.

Rechercher des sujets similaires à "suppression lignes"