Excel: différencier 0 de " "

Résolu
printfx000 -  
 printfx000 -
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 ?

2 réponses

  1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    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
  2. printfx000
     
    Excellent, ca marche.
    Merci pou tout.
    0