Function GetColor()
Dim lcolor As Long
If Application.Dialogs(xlDialogEditColor).Show(2, 0, 0, 0) = True Then
GetColor = ActiveWorkbook.Colors(2)
End If
ActiveWorkbook.ResetColors
End Function
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Dim C As Variant
C = GetColor
If C = "" Then Exit Sub
If C = vbWhite Then Target.Font.Color = vbWhite Else Target.Font.Color = vbBlack
Target.Interior.Color = IIf(C = vbWhite, xlNone, C)
Cancel = True
End Sub