Bonjour,
Une proposition à étudier.
La procédure s'exécutera chaque jeudi.
Pour tester, lancer manuellement la procédure CreateTables
Cdlt.
Private Sub Workbook_Open()
If VBA.Weekday(Date) = 5 Then
Call CreateTables
End With
End Sub
Public Sub CreateTables()
Dim ws As Worksheet, ws2 As Worksheet
Dim rng As Range
Dim n As Long, i As Long, lRow As Long
Dim dt As Date, dt2 As Date
Set ws = Worksheets("Donn?es")
Set ws2 = Worksheets("Tableaux")
ws2.Cells.Clear
Set rng = ws.Cells(1).CurrentRegion.Resize(, 6)
n = rng.Rows.Count
dt = Date
lRow = 1
For i = 1 To 6
dt2 = WorksheetFunction.WorkDay(dt, i)
rng.Copy Destination:=ws2.Cells(lRow, 2)
With ws2.Cells(lRow, 1).Resize(n)
.Value = dt2
.Borders.Weight = xlThin
End With
lRow = lRow + n + 1
Next i
ws2.Cells(1).Resize(, 6).EntireColumn.AutoFit
End Sub