Bonjour
J'ai fais ce code par contre, je trouve que mon "ElseIf " est un peu lourd et j'aimerais le rendre plus simple avec des fonctionnalités d'Excel
En gros, mon programme doit débuter à la ligne 8 et valider si les cellules entre les colonnes entre C et L de la ligne du compteur (I) sont vides.
Si tel est le cas, la ligne au complet doit être supprimée !
Par contre, il arrive parfois que des lignes ne soient pas supprimé dans la plage mentionné ci-dessus. Il faut alors que je relance mon programme et elles sont alors supprimés. Il est peut-être question de caractères cachés ou mal initialisé.
J'ai aussi essayé avec cela mais ça ne fonctionne pas et je trouve cela trop lourd aussi:
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 Sub test() Dim I As Integer Dim x1 As Range I = 8 Do While Not Range("A" & I).Value = "" If Range("A" & I).Value = 0 Then End ElseIf Cells(I, 3).Value = "" And Cells(I, 4).Value = "" And Cells(I, 5).Value = "" _ And Cells(I, 6).Value = "" And Cells(I, 7).Value = "" And Cells(I, 8).Value = "" _ And Cells(I, 9).Value = "" And Cells(I, 10).Value = "" And Cells(I, 11).Value = "" _ And Cells(I, 12).Value = "" Then Rows(I).Delete End If I = I + 1 Loop End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 ElseIf Len(Cells(I, 3).Value < 1) And Len(Cells(I, 4).Value < 1) And Len(Cells(I, 5).Value < 1) _ And Len(Cells(I, 6).Value < 1) And Len(Cells(I, 7).Value < 1) And Len(Cells(I, 8).Value < 1) _ And Len(Cells(I, 9).Value < 1) And Len(Cells(I, 10).Value < 1) And Len(Cells(I, 11).Value < 1) _ And Len(Cells(I, 12).Value < 1) Then Rows(I).Delete
Merci de votre aide
Partager