Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Snows

Formatação Condicional

Recommended Posts

Snows

Olá:

Tenho uma fórmula com ifs na coluna F que me dá valores numéricos consoante o que eu escrever nas colunas D e E.

Pretendo que esses números que dá a fórmula estejam associados a uma cor. A formatação condicional do Excel não resolve pois tenho 5 opções de saída.

Coloquei o seguinte código mas dá um erro. Podem ajudar-me?

'Private Sub Worksheet_Calculate()

'Dim oCell As Range

'Set oCell = Range("F")

            ' If oCell.Value = "1" Then oCell.Interior.Color = RGB(255, 0, 0)

            'If oCell.Value = "2" Then oCell.Interior.Color = RGB(255, 153, 0)

            ' If oCell.Value = "3" Then oCell.Interior.Color = RGB(255, 255, 153)

            ' If oCell.Value = "4" Then oCell.Interior.Color = RGB(153, 204, 255)

            'If oCell.Value = "5" Then oCell.Interior.Color = RGB(202, 255, 202)

'End Sub

Snows

Share this post


Link to post
Share on other sites
cristpate

ola jovem

para poder te ajudar melhor seria bom que colocasses o erro que ele da assim poderei analisar tanto o erro como o que tu queres fazer

ok


craziness it's to do the same thing over and over again expecting a different result

Share this post


Link to post
Share on other sites
jtiagodias

Ora bem...

À partida o teu não me parece propriamente errado mas se colocasses aqui o erro seria mais fácil tentar perceber...

De qualquer forma deixo uma página que já visualizei uma vez que pretendia o mesmo... O código é bem mais complexo...

http://www.cpearson.com/excel/CFColors.htm

Já agora, caso consigas resolver o teu problema, coloca aqui o código para ajudares o pessoal interessado (eu por exemplo).

Share this post


Link to post
Share on other sites
joseA

Uma contribuição para este tópico:

Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
If Not Intersect(Target, Range("A2:F" & Rows.Count)) Is Nothing Then
'Se utilizar área além da coluna F alterar
    
    With Target
        .Interior.ColorIndex = xlNone  'A princípio não terá preenchimento
        .Interior.Pattern = xlSolid    '            será sólido
        .Font.Bold = False            '            sem negrito
        .Font.ColorIndex = 1         '            fonte preta
        
        Select Case .Value
        Case 1: Cor = 6
        Case 2: Cor = 8
        Case 3: Cor = 11: .Font.Bold = True: .Font.ColorIndex = 2
        Case 4: Cor = 10: .Font.Bold = True: .Font.ColorIndex = 2
        End Select
        .Interior.ColorIndex = Cor
    End With
End If

Application.ScreenUpdating = True
End Sub

:P

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.