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