Excel: différencier 0 de " "

Résolu/Fermé
printfx000 - 13 juil. 2011 à 14:14
 printfx000 - 13 juil. 2011 à 15:15
Bonjour,

dans ma colonne A, j'ai environ 200 chiffres (de A1 à A200) : soit des 1, soit des 0.
j'ai une macro excel dans laquelle il y a une boucle qui supprime toutes les lignes ou il y a la valeur 0.
Le problème, c'est qu'arrivé à la fin des 200 lignes (= à A200), ma boucle ne veut pas s'arrêter car elle considère la cellule A201 qui est vide comme étant un 0. Du coup, sa tourne continuellement.

ma macro, la voici:

Sub Macro1()

Dim i As Integer
i = 1

Do While Cells(i, 2) <> ""
Do While Cells(i, 2) = 0
Cells(i, 2).Select
Selection.Delete Shift:=xlUp
Loop
i = i + 1
Loop

End Sub

Pourriez vous m'aider, svp, merci ?

A voir également:

2 réponses

pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 744
13 juil. 2011 à 14:29
Bonjour,
Si tu n'es pas obligé d'utiliser une boucle Do ... While, utilises For ... Next comme ceci peut être [code non testé]
Sub Essai()
Dim Lig As Integer
For Lig = 200 To 1 Step - 1
    If Cells(Lig, 2) = 0 Then
        Cells(Lig, 2).Delete Shift:=xlUp 
    End If
Next Lig
End Sub

Essaye ce code sur une copie de ton fichier, je m'en voudrais d'endommager ton fichier initial!!!
0
Excellent, ca marche.
Merci pou tout.
0