Private Sub Worksheet_Change(ByVal Target As Range)
Dim a&, i&, c As Date
If Intersect(Target, Range("tableau1").Resize(, 3)) Is Nothing Then Exit Sub
With Range("tableau1[#all]") 'on prend le tableau avec son entete
For i = 2 To .Rows.Count ' on démarre donc a la ligne 2
a = 0 'initialise la variable a à zero a chaque ligne
Deb = .Cells(i, 2): Fin = .Cells(i, 3) 'on récupère les dates
If .Cells(i, 4) = "" Then 'on ne fait la ligne que si!!! elle n'a pas été faite
For c = Deb To Fin 'boucle de date à date2
'on ajoute apres le tableau les jours de l’intervalle en incrémentant (a) pour l'offset
a = a + 1: .Cells(i, 3 + a) = c: .Cells(1, 3 + a) = "jour" & a
Next
End If
Next
'POUR INFO !!!
'écrire dans une cellule a coté d'un tableau structuré a por effet de l'agrandir jusqu'a cette cellule
'conclusion le tableau s'agrandi tout seul
End With
End Sub