[VBA] Sélectionner une plage de donnée

Résolu
Hyquest Messages postés 15 Statut Membre -  
Hyquest Messages postés 15 Statut Membre -
Bonjour,

Je souhaite sélectionner une plage de donnée sur excel en fonction du contenu.
C'est à dire par exemple de B1 à Bi avec i étant le dernier numéro de cellule avec un contenu différent de 0.

Exemple:
B1 = 12
B2 = 3
B3 = 6
B4 = 0

Je veux donc i=3 pour obtenir Range(B1:Bi) (de B1 à B3).

Merci d'avance.

3 réponses

lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Bonjour,
Comme ça ?
Sub Test()  
Dim lig As Long  
    With Sheets("Feuil1")  
        For lig = 1 To .Range("B65536").End(xlUp).Row  
            If .Cells(lig, 2) = 0 Then Exit For  
        Next lig  
        .Range("B1:B" & lig).Select  
    End With  
End Sub

A+
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
0
eriiic Messages postés 25847 Statut Contributeur 7 279
 
Bonsoir,

Sub selectionner()
    Dim lig As Long
    For lig = Cells(Rows.Count, 2).End(xlUp).Row To 1 Step -1
        If Cells(lig, 2) <> 0 Then Exit For
    Next lig
    Range("B1:B" & lig).Select
End Sub

eric
0
Hyquest Messages postés 15 Statut Membre
 
Merci beaucoup pour vos réponses si rapide. J'ai essayé la méthode d'Eric et il me semble que c'est ce que je chercher.
Merci encore :)
0