Bonjour à toutes et à tous
Après des jours de recherches personnelles, je me résous à solliciter votre aide.
Je vous joins un petit fichier fictif qui, je l'espère, vous éclairera tout de même sur mon besoin.
J'ai, en A1, une liste de validation (des Mois).
De A3 à A10, des dates.
De B3 à D10, des valeurs.
Un bouton de commande
Je recherche, en fonction du mois choisi en A1, à sélectionner une plage contenant les dates répondant au critère, ainsi que les valeurs adjacentes, mon but final étant de copier, puis coller ces données dans un autre classeur.
Voici un code concocté grâce à votre communauté, mais avec lequel je rencontre un problème :
- la plage recherchée, bien qu'étant mise en surbrillance, n'est pas vraiment sélectionnée, d'où mon incapacité à la copier pour collage.
Sub export()
Dim c As Range
For Each c In Range("A3:A10")
If c.Value <> "" Then
If Month(c.Value) = Month(Range("A1").Value) Then
Application.Union(Selection, Range(c, c.Offset(0, 3))).Select
End If
End If
Next
End Sub
Pouvez-vous m'éclairer ?
Bien cordialement
Après des jours de recherches personnelles, je me résous à solliciter votre aide.
Je vous joins un petit fichier fictif qui, je l'espère, vous éclairera tout de même sur mon besoin.
J'ai, en A1, une liste de validation (des Mois).
De A3 à A10, des dates.
De B3 à D10, des valeurs.
Un bouton de commande
Je recherche, en fonction du mois choisi en A1, à sélectionner une plage contenant les dates répondant au critère, ainsi que les valeurs adjacentes, mon but final étant de copier, puis coller ces données dans un autre classeur.
Voici un code concocté grâce à votre communauté, mais avec lequel je rencontre un problème :
- la plage recherchée, bien qu'étant mise en surbrillance, n'est pas vraiment sélectionnée, d'où mon incapacité à la copier pour collage.
Sub export()
Dim c As Range
For Each c In Range("A3:A10")
If c.Value <> "" Then
If Month(c.Value) = Month(Range("A1").Value) Then
Application.Union(Selection, Range(c, c.Offset(0, 3))).Select
End If
End If
Next
End Sub
Pouvez-vous m'éclairer ?
Bien cordialement