karakoman1
XLDnaute Occasionnel
Bonjour le forum,
Je voudrais soumettre ma macro aux spécialistes VBA qui m'ont déja bien aidé à la construire.
Mon problème:
Cette macro devrait filtrer une colonne en fonction d'une date trouvée (le mois actuel +2 mois) sur la 4eme ligne d'un tableau
Au jour d'aujourd'hui, elle devrait me trier le mois de janvier 2014. Et bien... Que nenni!!
J'ai l'impression que le problème se situe dans le fait de passer de 2013 à 2014 fait qu'il ne trouve pas la date.
Dans la ligne:
d = CDate("1/" & Month(Date) + 2 & "/" & Year(Date))
Quand je change le +2 en +1, ca marche, j'ai bien le mois de décembre trié.
Il faudrais pêut-être adapter cette ligne de commande.
J'espère qu'une âme charitable voudra bien jeter un oeil et pourra m'aider à avancer un peu plus.
Merci à vous
Je voudrais soumettre ma macro aux spécialistes VBA qui m'ont déja bien aidé à la construire.
Mon problème:
Cette macro devrait filtrer une colonne en fonction d'une date trouvée (le mois actuel +2 mois) sur la 4eme ligne d'un tableau
Au jour d'aujourd'hui, elle devrait me trier le mois de janvier 2014. Et bien... Que nenni!!
J'ai l'impression que le problème se situe dans le fait de passer de 2013 à 2014 fait qu'il ne trouve pas la date.
Dans la ligne:
d = CDate("1/" & Month(Date) + 2 & "/" & Year(Date))
Quand je change le +2 en +1, ca marche, j'ai bien le mois de décembre trié.
Il faudrais pêut-être adapter cette ligne de commande.
J'espère qu'une âme charitable voudra bien jeter un oeil et pourra m'aider à avancer un peu plus.
Merci à vous
Code:
Private Sub CommandButton3_Click()
'Affiche le mois en cours +2 mois, filtre et copie dans Test Planning
Dim d As Date 'déclare la variable d (Date)
Dim r As Range 'déclare la variable r (Recherche)
ActiveSheet.AutoFilterMode = False 'Désactive le filtre automatique
ActiveCell.Select 'enlève le focus au bouton
d = CDate("1/" & Month(Date) + 2 & "/" & Year(Date)) 'définit la date d + 2 mois
Set r = Range("BQ4:DU4").Find(d, , xlFormulas, xlWhole) 'définit la recherhce r
'si il existe au moins une occurrence trouvée, sélectionne la première occurrence, positionne la colonne à gauche
If Not r Is Nothing Then r.Select: ActiveWindow.ScrollColumn = r.Column
'Active le filtre sur la colonne active
ActiveSheet.Range("$A$8:$DV$203").AutoFilter ActiveCell.Column, Criteria1:=RGB(255 _
, 255, 0), Operator:=xlFilterCellColor
'Efface les valeurs du Planning d'inspection
Worksheets("Test Planning insp").Range("B7:B50").ClearContents
'Sélectionne et copie les cellules triées de l'onglet Liste Véhicules
Worksheets("Liste Véhicules").Range("J65536").End(xlUp)(1).Select
Range(Selection, Selection.End(xlUp)).Select
Selection.Copy
'Active la feuille Test Planning insp et colle les valeurs de la feuille liste Véhicules
Sheets("Test Planning insp").Activate
Worksheets("Test Planning insp").Range("B7").Select
Selection.PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
Worksheets("Test Planning insp").Range("A5").Value = Worksheets("Test Planning insp").Range("B4").Value
End Sub