Non en effet vous aviez raison la date n'était pas en colonne E mais F maintenant cela fonctionne merci !
Il faut une macro pour l'ensemble du classeur ou une macro par onglet ?
Si j'ai bien compris la je reprends la même macro et j'ai juste à renommer les onglets Feuil1, Feuil2 avec les onglets de mon fichier ?
Car sur l'exemple que je vous ai donné les onglets se nomment Feuil1 et Feuil2 mais en vrai dans mon fichier ils se nomment NbrGW et RECAP et j'ai plusieurs onglets différents.
Je vais faire l'essai en tout cas merci
Option Explicit
Private Sub Workbook_Open()
Dim i As Long, j As Integer
Sheets("Feuil1").Select
For j = 5 To Cells(1, Columns.Count).End(xlToLeft).Column
If Cells(1, j).Value < Date Then Columns(j).Hidden = True Else Exit For
Next
Sheets("Feuil2").Range("A2:D" & Rows.Count).ClearContents
Sheets("Feuil2").Range("B1").Value = Cells(2, j).Value
Sheets("Feuil2").Range("C1").Value = Cells(2, j + 1).Value
Sheets("Feuil2").Range("D1").Value = Cells(2, j + 2).Value
For i = 3 To Range("A" & Rows.Count).End(xlUp).Row
Range("D" & i).Value = WorksheetFunction.Sum(Range(Cells(i, j), Cells(i, j + 3)))
With Sheets("Feuil2")
.Range("A" & i).Value = Range("A" & i).Value
.Range("B" & i).Value = Cells(i, j).Value
.Range("C" & i).Value = Cells(i, j + 1).Value
.Range("D" & i).Value = Cells(i, j + 2).Value
End With
Next
End Sub