'On boucle sur toutes les cellule de la colonne A, on quittera sur contenu cellule vide
For I = 7 To Rows.count
If Cells(I, "A") = "" Then Exit For
'On regarde le nombre de ligne qui vont etre créer
NbrSaute = Cells(I, columns.count).End(xlToLeft).Column - 1 '-1 pour ne pas tenir compte de A
'On boucle de la derniere colonne remplie a la colonne B
For Col = range(cells(i, columns.count).End(xlToLeft),cells(i,"B") Step -1
'on ajoute une ligne sous la cellule
Cells(I + 1, "A").EntireRow.Insert
'on lui donne le meme contenue (n°Insee)
Cells(I + 1, "A").Value = Cells(I, "A").Value
'On met le contenue de la colonne Col dans la 2eme colonne de la ligne suivnate
Cells(I, Col).Cut Cells(I + 1, "B")
Next
'On saute les 2 ligne fraichement rajoutées
I = I + NbrSaute
Next