Couldn't you toggle with
[vba]Sub toggle()
Dim oshp As Shape
Set oshp = ActiveWorkbook.Worksheets(1).Shapes(1)
With oshp.PictureFormat
Select Case .ColorType
Case Is = msoPictureGrayscale
.ColorType = msoPictureAutomatic
Case Is = msoPictureAutomatic
.ColorType = msoPictureGrayscale
End Select
End With
End Sub[/vba]
OR to use saturation
[VBA]With s.Fill.PictureEffects
.Delete (1)
.Insert(msoEffectSaturation).EffectParameters(1).Value = 0.5 'whatever
End With[/VBA]