Sélection de lignes suivant une condition ?

Bonjour à tous,

Voilà un petit moment que je tourne en rond, et je ne trouve pas de solution.

Pour me permettre d'avancer, j'aurai besoin d'un petit coup de pouce.

Dans le fichier ci-joint, comment dois-je écrire mon code pour sélectionner toutes les lignes dont le mois correspond à la cellule A4 ?

Merci à tous pour votre aide,

Cordialement,

xorsankukai

PS: Sans abuser, si je peux avoir quelques explications...mon but étant de progresser et non de recopier bêtement, ce serait vraiment sympa.

35test.xlsm (26.21 Ko)

Bonjour,

Déjà vu ce fichier

Tu peux mettre ce code dans un module

Sub SelectLigneMois()
Dim mois As String 'variable alphanumérique
Dim n As Byte ' variable nombre jusqu'à 256

mois = Format([A4], "mm") 'trouve le mois en A4 au format exemple "01" pour janvier
n = 4
Do While Format(Cells(n, "A"), "mm") = mois 'boucle tant que le format mois de la cellule correspond au format de la variable mois
    If Format(Cells(n, "A"), mois) Then n = n + 1 'incrémente n
Loop
'selection
Range("A4:A" & n - 1).Select 'selectionne les cellules
End Sub

cordialement

Bonjour ddetp88 et merci pour ton code et ses explications.

Effectivement, j'avais déjà effectué une demande qui était restée sans réponse, j'ai supposé que je n'étais pas sur la bonne voie...

Petite question:

n = 4

parce que cellule A4 ? si c'était A5 ce serait

n=5

?

Oui, la valeur n à l'origine donne le numéro de la ligne de départ.

Il est ensuite incrémenté pour le test

Bonne continuation

Un grand merci à toi ddetp88,

Bonne soirée.

Cordialement,

xorsankukai

Bonjour,

La macro qui fonctionne parfaitement, ne sélectionne que les cellules, serait-il possible de sélectionner les lignes entières?

A bientôt,

Cordialement,

xorsankukai

Bonjour tout le monde,

je dirais qu'il faut modifier la macro de ddetp88 de la manière suivante :

Sub SelectLigneMois()
Dim mois As String 'variable alphanumérique
Dim n As Byte ' variable nombre jusqu'à 256

mois = Format([A4], "mm") 'trouve le mois en A4 au format exemple "01" pour janvier
n = 4
Do While Format(Cells(n, "A"), "mm") = mois 'boucle tant que le format mois de la cellule correspond au format de la variable mois
   If Format(Cells(n, "A"), mois) Then n = n + 1 'incrémente n
Loop
'selection
Rows("1:" & n - 1).Select 'selectionne les cellules
End Sub

A tester.

Cordialement.

Bonjour bigdaddy154,

Merci pour ta participation.

Ton code fonctionne mais il sélectionne également les 3 premières lignes (intitulé du tableau), ce que je ne veux pas.

Je crois que j'ai trouvé, je ne sais pas si c'est la bonne façon de faire, mais ça semble fonctionner.

Sub SelectLigneMois()
    Dim mois As String 'variable alphanumérique
    Dim n As Byte ' variable nombre jusqu'à 256

    mois = Format([A4], "mm") 'trouve le mois en A4 au format exemple "01" pour janvier
    n = 4
    Do While Format(Cells(n, "A"), "mm") = mois 'boucle tant que le format mois de la cellule correspond au format de la variable mois
       If Format(Cells(n, "A"), mois) Then n = n + 1 'incrémente n
    Loop
    'selection
    Range("A4:A" & n - 1).Select 'selectionne les cellules
    Range(Selection, Selection.End(xlToRight)).Select  'selectionne la ligne complète

    End Sub

J'ai rajouté :

Range(Selection, Selection.End(xlToRight)).Select 'selectionne la ligne complète

Merci,

Cordialement,

xorsankukai

Rechercher des sujets similaires à "selection lignes suivant condition"