Voilà pour mettre les intitulés de colonnes...
Sub InsertColonnes()
Dim k%, kk%, Nk
Nk = Split("stock designation maxi vtes rel vm pb r% pn R% pn")
With ActiveSheet
kk = .Cells(1, .Columns.Count).End(xlToLeft).Column
Application.ScreenUpdating = False
For k = kk To 2 Step -1
.Columns(k).Resize(, 11).Insert
.Cells(1, k).Resize(, 11).Value = Nk
Next k
End With
End Sub
Mais il va peut-être y avoir un petit problème : on insère les nouvelles colonnes entre celles existantes, donc les intitulés de colonnes ne sont pas mis après la dernière colonne initiale ... !
Cela peut se rectifier facilement si besoin...
Je n'ai pas encore regardé ton fichier, On verra la suite après manger.