J'ai intégrer votre proposition à ma macro
Voir code ci-après
Sub Ceer_année_sup3()
'
' Ceer_année_sup Macro
' Permet de créer une année supplémentaire dans le planning
'Variables'
Dim AdresseDépart As Worksheet
Dim source As Range, dest As Range
'enregistrer la feuille active de départ'
Set AdresseDépart = ActiveSheet
'ôter la protection de la feuille'
ActiveSheet.Unprotect Password:="Admin"
Application.DisplayAlerts = False
' Supprimer les filtres
ActiveSheet.AutoFilterMode = False
Rows("14:14").AutoFilter
Set source = Sheets("EXP1").Columns("R:LQ") 'plage origine à copier
Set dest = AdresseDépart.Range("l2").End(xlToRight)(-0, 1) 'plage destination à déplacer <<<< ADAPTER
source.Copy 'copie origine
With dest 'avec destination
.Insert shift:=xlLeft 'insertion des lignes copiées vers la gauche
With .Offset(, -source.Columns.Count).Resize(, source.Columns.Count).FormatConditions 'avec les MFC des lignes collées
With .Add(Type:=xlExpression, Formula1:="=R$1=0") 'avec nouvelle mfc
.Priority = 1 'définit la priorité sur 1 (prévaut sur les
.Font.Color = RGB(0, 0, 255) 'couleur police
.Interior.Color = RGB(255, 255, 0) 'couleur cellule
End With
End With
End With
End Sub
Je sais pas si j'ai loupé un truc, mais dans la plage collée, j'ai toujours les mises en formes qui font référence à la feuille d'origine "EXP1".
Je suis têtu mais je pense, que vu la complexité des mises en formes existantes sur la plage à copier et vu que la fonction coller fonctionne correctement, je vais essayer d'approfondir la solution d'incérer dans un premier temps 312 colonnes au bon endroit dans ma feuille de départ puis d'y coller les colonnes "R:LQ de "EXP1"