Bonjour,
N'ayant eu de résultat attendu je me suis basé sur la feuille HTA de votre fichier facture-2021 pour la plage B a AD car ensuite il y a des cellules fusionnées, des formules, etc ... :
Sub DECALER()
Dim C As Byte
With ActiveSheet
For C = 2 To 30 'De la colonne B a la colonne AD
.Cells(C, C).Offset(5) = .Cells(6, C) 'Valeur présente dans la cellule de la colonne à la ligne 6 vient se coller à la ligne de la colonne auquel on rajoute 5 (exemple si C = 2, alors la ligne sera 2 + 5 = 7) Donc Cells(7,2) = Cells(6,2) donc B7 = B6 = 0401
Next C 'Passe à la colonne suivante
End With
End Sub
Si vous souhaitez ne pas convertir les valeurs numériques alors :
Sub DECALER()
Dim C As Byte
With ActiveSheet
For C = 2 To 30
.Cells(C, C).Offset(5).NumberFormat = "0000"
.Cells(C, C).Offset(5) = .Cells(6, C)
Next C
End With
End Sub
A adapter en fonction de vos besoins.
Cdlt,