Sub EcrireFormule()
Dim Plage As Range
Dim MaRange As Range, Cellule As Range
Dim Couleur%
Dim Formule$
Set Plage = Application.InputBox("Sélectionner la plage où va s'effectuer le traitement", "Plage à traiter", , , , , , 8)
Set MaRange = Application.InputBox("Sélectionner la cellule qui sert de référence", "Référence", , , , , , 8)
If Plage Is Nothing Then Exit Sub
If MaRange.HasFormula = True Then
Formule = MaRange.FormulaR1C1
Else
Formule = MaRange.Text
End If
Couleur = MaRange.Interior.ColorIndex
For Each Cellule In Plage
Select Case Cellule.Interior.ColorIndex
Case Couleur
Cellule.FormulaR1C1 = Formule
End Select
Next
End Sub