Note: The other languages of the website are Google-translated. Back to English
Log in  \/ 
x
or
x
Inscreva-se  \/ 
x

or

Como alterar a cor da caixa de texto com base no valor no Excel?

No Excel, podemos aplicar a função de Formatação Condicional para alterar a cor de fundo com base no valor da célula, mas, neste artigo, falarei sobre como alterar a cor da caixa de texto com base no valor da célula ou valor na caixa de texto.

Alterar a cor da caixa de texto com base no valor da célula com código VBA

Alterar a cor da caixa de texto com base no valor da caixa de texto com código VBA


seta azul bolha direita Alterar a cor da caixa de texto com base no valor da célula com código VBA


Digamos que, se o valor da célula em A1 for maior que o valor da célula em B1, quero que a caixa de texto seja preenchida com a cor vermelha, pelo contrário, a caixa de texto deve ser preenchida com a cor amarela. Consiga este trabalho com as seguintes etapas:

1. Insira uma caixa de texto clicando em Desenvolvedor > inserção > Caixa de texto (controle ActiveX)e desenhe uma caixa de texto, veja a captura de tela:

cor da caixa de texto do doc com base no valor 1

2. Em seguida, clique com o botão direito na caixa de texto e selecione Ver código do menu de contexto para abrir o Microsoft Visual Basic para Aplicações janela e, em seguida, substitua o código original pelo seguinte código VBA no módulo em branco:

Código VBA: altere a cor da caixa de texto com base nos valores das células:

Private Sub TextBox1_Change()
    If ActiveSheet.Range("A1").Value > ActiveSheet.Range("B1").Value Then
        Me.TextBox1.BackColor = vbRed
    Else
        Me.TextBox1.BackColor = vbYellow
    End If
End Sub

cor da caixa de texto do doc com base no valor 2

Importante: No código acima, TextBox1 é o nome da caixa de texto que você inseriu, A1 ao mesmo tempo que B1 são as duas células nas quais você deseja alterar a cor da caixa de texto, altere-as de acordo com sua necessidade.

3. Em seguida, salve e feche a janela de código e saia do Modo de design, agora, se a célula A1 for maior que B1, ao digitar o texto na caixa de texto, ele será preenchido com a cor vermelha, e se A1 for menor que B1, ao inserir o valor na caixa de texto, será preenchido com a cor amarela, veja a imagem:

cor da caixa de texto do doc com base no valor 3


seta azul bolha direita Alterar a cor da caixa de texto com base no valor da caixa de texto com código VBA

Se você deseja alterar a cor da caixa de texto com base no valor na caixa de texto, por exemplo, quando o valor na caixa de texto está entre 1 e 10, a cor preenchida da caixa de texto é vermelho, a cor da caixa de texto é verde se o valor estiver entre 11 e 20, se for outros valores, a cor da caixa de texto é amarela. Para lidar com esta tarefa, aplique o código VBA abaixo.

1. Depois de inserir uma caixa de texto, clique com o botão direito e selecione Ver código do menu de contexto para abrir o Microsoft Visual Basic para Aplicações janela e, em seguida, substitua o código original pelo seguinte código VBA no módulo em branco:

Código VBA: altere a cor da caixa de texto com base no valor na caixa de texto:

Private Sub TextBox1_Change()
    On Error Resume Next
    Select Case TextBox1.Value
        Case 1 To 10:
            TextBox1.BackColor = vbRed
        Case 11 To 20:
            TextBox1.BackColor = vbGreen
        Case Else:
            TextBox1.BackColor = vbYellow
    End Select
End Sub

cor da caixa de texto do doc com base no valor 4

Importante: No código acima, Caixa de Texto 1 é o nome da caixa de texto inserida e você pode alterar os valores e a cor de fundo do código para o seu próprio.

2. Em seguida, salve e feche a janela de código e saia do Modo de design, agora, se você inserir o valor entre 1 e 10 na caixa de texto, sua cor de fundo se tornará vermelha, o valor entre 11 e 20, a cor de fundo da caixa de texto se tornará verde, outros valores, ela se tornará amarela, conforme mostrado a seguir:

cor da caixa de texto do doc com base no valor 5


Artigos relacionados:

Como inserir uma imagem na caixa de texto?

Como definir um valor padrão em uma caixa de texto?

Como permitir que apenas números sejam inseridos na caixa de texto?

Como aplicar a verificação ortográfica na caixa de texto?


As melhores ferramentas de produtividade para escritório

O Kutools for Excel resolve a maioria dos seus problemas e aumenta sua produtividade em 80%

  • armadilha para peixes: Insira rapidamente fórmulas complexas, gráficos e qualquer coisa que você tenha usado antes; Criptografar células com senha; Criar lista de discussão e enviar emails ...
  • Super Formula Bar (edite facilmente várias linhas de texto e fórmula); Layout de leitura (ler e editar facilmente um grande número de células); Colar na faixa filtrada...
  • Mesclar células / linhas / colunas sem perder dados; Dividir o conteúdo das células; Combinar linhas / colunas duplicadas... Evite células duplicadas; Comparar intervalos...
  • Selecione Duplicado ou Único Linhas; Selecione linhas em branco (todas as células estão vazias); Super Find e Fuzzy Find em muitos livros; Seleção aleatória ...
  • Cópia exata Várias células sem alterar a referência da fórmula; Criação automática de referências para várias folhas; Inserir marcadores, Caixas de seleção e mais ...
  • Extrair Texto, Adicionar texto, remover por posição, Remover Espaço; Criar e imprimir subtotais de paginação; Converter entre conteúdo de células e comentários...
  • Super Filtro (salvar e aplicar esquemas de filtro a outras planilhas); Classificação Avançada por mês / semana / dia, frequência e mais; Filtro Especial por negrito, itálico ...
  • Combine pastas de trabalho e planilhas; Mesclar tabelas com base em colunas-chave; Divida os dados em várias folhas; Conversão em lote de xls, xlsx e PDF...
  • Mais de 300 recursos poderosos. Suporta Office / Excel 2007-2019 e 365. Suporta todos os idiomas. Fácil implantação em sua empresa ou organização. Teste gratuito de 30 dias com recursos completos. Garantia de devolução do dinheiro em 60 dias.
guia kte 201905

Guia do Office traz interface com guias para o Office e torna seu trabalho muito mais fácil

  • Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
  • Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!
officetab bottom
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Stefan · 3 years ago
    Nevermind, I figured it out. Instead of making the event which triggers the change "Textbox1_GotFocus()", I made it "Worksheet_SelectionChange(ByVal Target As Range)". Now any time the value in one of the cells changes, the textbox color changes automatically.
  • To post as a guest, your comment is unpublished.
    Stefan · 3 years ago
    For me, when trying to change the textbox color value based on two cell values, the textbox only updates if you type something into the textbox. I need it to update automatically. Guess I'll just have to learn VBA to figure out why.
  • To post as a guest, your comment is unpublished.
    Justin · 4 years ago
    Can someone provide an example workbook so I can see this working? I keep trying but to no avail. Thanks