1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| Option Explicit
Sub AjoutMFC(rModèle As Range, rPlage As Range)
'--- ajout mises en forme conditionnelles selon plage modèle
Dim kR As Long
'Debug.Print rModèle(1, 1), rModèle(1, 2)
'Debug.Print rPlage(1), rPlage(2)
rPlage.FormatConditions.Delete '--- supprime tous les formats conditionnels existants (pour ne pas les accumuler)
'--- ajoute format conditionnels identiques à ceux utilisés dans plage modèle
For kR = rModèle.Rows.Count To 1 Step -1 '--- va de bas en haut pour ajouter les conditions
Debug.Print kR
If rModèle(kR).Interior.Color <> vbWhite Or rModèle(kR).Font.Color <> vbBlack Then
'--- ajout format si différent du format "normal"
With rPlage.FormatConditions.Add( _
Type:=xlCellValue, _
Operator:=xlEqual, _
Formula1:=rModèle(kR).Value)
.Interior.Color = rModèle(kR).Interior.Color
.Font.Color = rModèle(kR).Font.Color
'--- et éventuellement encore d'autres propriétés
End With
End If
Next kR
End Sub
Sub Test()
AjoutMFC Worksheets("BOM_FULL_ASSEMBLY").Range("B3:BG400"), Worksheets("MODULAR").Range("B3:B20,F3:F30,J3:J35,N3:N50,R3:R15,V3:V65,Z3:Z20,AD3:AD30,AH3:AH30")
End Sub |
Partager