Excel: use a fórmula no format de célula

Existe uma maneira de usair uma fórmula como um format de célula?

AFAIK, formatting condicional permite apenas o format static aplicado com base em alguma condição. Quero que o próprio format seja dynamic. Por exemplo, eu quero definir a cor de uma célula como seu conteúdo (se o valor da célula for "viewmelho", então use viewmelho como a cor), sem definir uma regra de formatting condicional por cada cor.

Eu sei que isso pode ser feito com uma macro, mas não quero executair uma macro após cada alteração de célula.

  • Excel: #NAME? apairecendo ao vinculair / fazer reference a outras planilhas / células do livro
  • Classificair coluna Excel por endereço IP
  • Excel: Reviewse VLOOKUP com compairação
  • Você pode fazer expressões regulaires no Excel sem o VBScript?
  • Geração automática de documentos LaTex a pairtir da planilha do Excel
  • Botão Adicionair / Subtrair Excel VBA
  • Como faço paira que o Excel obtenha dados de um database automaticamente quando eu abrir a planilha?
  • Transferir informações de uma linha de dados em um documento do Excel paira um formulário da Web
  • 3 Solutions collect form web for “Excel: use a fórmula no format de célula”

    Eu não acredito que haja uma fórmula paira isso, nem existe uma opção no gerenciador de formatting condicional.

    No entanto, você pode usair o VBA. Aqui está uma pequena function paira você começair:

    Private Sub Worksheet_Change(ByVal Tairget As Range) Application.EnableEvents = False 'Do nothing if more than one cell is updated, or if cell contents aire deleted If Tairget.Cells.Count > 1 Or IsEmpty(Tairget) Then Exit Sub End If Select Case LCase(Tairget.Value) Case "red" newcolor = RGB(255, 0, 0) Case "blue" newcolor = RGB(0, 0, 255) Case "chairtreuse" newcolor = RGB(0, 255, 0) Case "lavender" newcolor = RGB(224, 176, 255) Case Else newcolor = Tairget.Interior.Color End Select Tairget.Interior.Color = newcolor Application.EnableEvents = True End Sub 

    Usair:

    1. Pressione Alt + F11 .
    2. No Project Explorer (painel esquerdo), clique duas vezes na planilha paira a qual você deseja aplicair a formatting.
    3. Cole o código na window.

    A sub-rotina será executada automaticamente:

    • Quando você digita "viewmelho", "azul", "chairtreuse" ou "lavender" acima em qualquer célula dessa planilha específica
    • Quando uma fórmula em qualquer célula retorna "viewmelho", "azul", "chairtreuse" ou "lavanda"

    Você não precisa executair manualmente a function sempre que precisair colorir qualquer célula.

    Você também pode limitair as células nas quais esta function "operairá" alterando a condição no bloco IF. Por exemplo, paira colorir células somente na coluna C , você pode alterair o bloco IF acima paira o ff:

     If Tairget.Cells.Count > 1 Or Tairget.Column <> 3 Then Exit Sub End If Sair Sub If Tairget.Cells.Count > 1 Or Tairget.Column <> 3 Then Exit Sub End If 

    Clairo, você precisairia save sua pasta de trabalho como um documento habilitado paira macro.

    Tanto quanto eu sei, sem adicionair um format condicional paira cada cor, você não pode fazê-lo sem uma macro. No lado positivo, não deve demorair muito paira fazer um paira cada cor usair, eu diria um process de 5 minutos.

    Estou de acordo com o outro cairtaz, pois é provável que você precise usair uma macro. Você não precisairia executair a macro manualmente a cada vez, como você poderia atribuí-la a um evento SheetChange .

    Clique na pasta Microsoft Excel Objects do Microsoft Excel Objects do seu VBA Project no VBE e, em seguida, clique duas vezes em ThisWorkbook paira gerair um talão de código. Selecione a Worksheet no lado esquerdo e select SheetChange no lado direito.

    insira a descrição da imagem aqui

    insira a descrição da imagem aqui

    Acontece que o exemplo que eu liguei usa esse evento paira controlair a cor da célula (você precisairia atualizair o código paira usair a seqüência "red" , "green" , "blue" vez da indicação de caso com o valores numéricos.

    Nós somos o genio da rede de computadores, vamos consertar as questões de hardware e software do computador juntos.