Bonjour à tous,

J'aimerai effectuer une recher sur un plage de cellules qui contiennent des dates, et créer un graphique uniquement avec les données qui ont comme date 2005 par exemple, alors que dans les cellules la date est en format 12/02/2005.

Il y a quelque temps, monsieur Fring m'avait donné cette procédure de recherche qui fonctionne très bien, mais je dois la modifier pour mon nouveau problème ... Mais je ne vois pas du tout comment extrère l'année contenue dans ces cellules

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
 
Private Sub CommandButton1_Click()
 
Dim i As Integer, DateDeb As Date, DateFin As Date
Dim Ligdeb As Integer, LigFin As Integer, Graph As Chart
 
Application.ScreenUpdating = False
 
DateDeb = Sheets("Feuil1").TextBox1
DateFin = Sheets("Feuil1").TextBox2
 
If DateDeb >= DateFin Then
MsgBox "la date de fin doit être postérieure à la date de début"
Exit Sub
End If
 
With Sheets("Feuil2")
    For i = 1 To .Cells(Rows.Count, 1).End(xlUp).Row
        If .Cells(i, 1) = DateDeb Then
            Ligdeb = i
            Exit For
        ElseIf .Cells(i, 1) > DateDeb Then
            Ligdeb = i
            Exit For
        End If
    Next
    For i = 1 To .Cells(Rows.Count, 1).End(xlUp).Row
        If .Cells(i, 1) = DateFin Then
            LigFin = i
            Exit For
        ElseIf .Cells(i, 1) > DateFin Then
            LigFin = i
            Exit For
        End If
    Next
End With
 
Set Graph = Charts.Add
With Graph
    .ChartType = xlLine
    .SetSourceData Source:=Sheets("Feuil2").Range("A" & Ligdeb & ":C" & LigFin), PlotBy:=xlColumns
    .SeriesCollection(1).Name = "=""Conso"""
    .SeriesCollection(2).Name = "=""Temp"""
    .Location Where:=xlLocationAsNewSheet, Name:="Signature 1 courbe"
End With
 
Sheets("Feuil1").Activate
Application.ScreenUpdating = True
 
End Sub