Note: The other languages of the website are Google-translated. Back to English

Como extrair texto com base na cor da fonte de uma célula no Excel?

Se você tem uma lista de dados com algum texto em vermelho em cada célula do Excel, conforme mostrado na imagem abaixo, e você sabe como extrair apenas o texto em vermelho? Agora vou apresentar uma maneira rápida de resolver o quebra-cabeça que extrai texto com base na cor da fonte de uma célula no Excel.

doc-extract-text-color-1

Extraia o texto com base na cor da fonte de cada célula

Guia Office Habilite a edição e navegação com guias no Office e torne seu trabalho muito mais fácil ...
O Kutools for Excel resolve a maioria dos seus problemas e aumenta sua produtividade em 80%
  • Reutilizar qualquer coisa: Adicione as fórmulas, gráficos e tudo mais usados ​​ou complexos aos seus favoritos e reutilize-os rapidamente no futuro.
  • Mais de 20 recursos de texto: Extrair número da string de texto; Extraia ou remova parte dos textos; Converta números e moedas para palavras em inglês.
  • Ferramentas de mesclagem: Várias pastas de trabalho e planilhas em um; Mesclar várias células / linhas / colunas sem perder dados; Mesclar linhas duplicadas e soma.
  • Ferramentas de divisão: Divida os dados em várias folhas com base no valor; Uma pasta de trabalho para vários arquivos do Excel, PDF ou CSV; Uma coluna para várias colunas.
  • Colar Ignorando Linhas ocultas / filtradas; Contagem e soma por cor de fundo; Envie emails personalizados para vários destinatários em massa.
  • Super Filtro: Crie esquemas de filtro avançados e aplique a qualquer planilha; tipo por semana, dia, frequência e muito mais; filtros por negrito, fórmulas, comentário ...
  • Mais de 300 recursos poderosos; Funciona com Office 2007-2021 e 365; Suporta todos os idiomas; Fácil implantação em sua empresa ou organização.

seta azul bolha direita Extraia o texto com base na cor da fonte de cada célula

No Excel, você só pode usar a função definida para extrair o texto com base na cor da fonte.

1. Pressione Alt + F11 juntas para abrir a janela Microsoft Visual Basic for Applications.

2. Clique inserção > Módulo e copie o seguinte código VBA para a janela aberta.

VBA: Extraia texto com base na cor da fonte

Function GetColorText(pRange As Range) As String
'UpdatebyExtendoffice20220621
Dim xOut As String
Dim xValue As String
Dim i As Long
Dim TextColor
TextColor = RGB(255, 0, 0) 'colorindex RGB
xValue = pRange.Text
For i = 1 To VBA.Len(xValue)
  If pRange.Characters(i, 1).Font.Color = TextColor Then
  xOut = xOut & VBA.Mid(xValue, i, 1)
  End If
Next
GetColorText = xOut
End Function

3. Em seguida, salve e feche a caixa de diálogo e selecione uma célula em branco ao lado da lista de dados, digite esta fórmula = GetColorText (A1) (A1 indica a célula da qual deseja extrair o texto), pressione Entrar para obter o texto necessário e, em seguida, arraste a alça de preenchimento automático para preencher a fórmula até o intervalo desejado.

Agora você pode ver que todo o texto em vermelho foi extraído.

doc-extract-text-color-2

Dica: No código VBA acima, você pode alterar a cor rgb neste script TextColor = RGB(255, 0, 0) para outras para atender a sua necessidade.


Artigos relativos:


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 ...
  • Barra Super Fórmula (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-2021 e 365. Suporta todos os idiomas. Fácil implantação em sua empresa ou organização. Recursos completos de avaliação gratuita de 30 dias. 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!
parte inferior da aba do escritório
Comentários (14)
Ainda não há classificações. Seja o primeiro a avaliar!
Este comentário foi feito pelo moderador no site
Olá, quando tentei usar o vbBlue, não funcionou. Ajuda por favor? Obrigado!
Este comentário foi feito pelo moderador no site
Dê a cor da fonte para a cor azul exata.
Porque existem muitos tipos de cor azul "azul claro, azul céu, azul escuro"
vba corresponde apenas à cor exata.??????
Este comentário foi feito pelo moderador no site
O código funciona bem se as strings vermelhas forem contínuas. Caso estejam separados na célula de origem, são colados uns aos outros na célula de saída. Quero dizer, não há espaço na saída se as cadeias de texto vermelhas estiverem distantes umas das outras. Você pode, por favor, fornecer uma solução para isso?
Este comentário foi feito pelo moderador no site
Hey, obrigado pela dica. Funciona muito bem com vermelho e preto.
E se eu quiser analisar "Purple"? alterá-lo vbPurple não funciona.
obrigado
Este comentário foi feito pelo moderador no site
Buonasera, grazie mille un'ottima funzione. Però ho un problema, when val nel foglio ed entersco es. = GetColorText (A1) restituisce il value giusto però como riavvio il file mi da errore #VALORE!, se poi clicco 2 vezes sopra mi da il valore corretto e così via. che posso tarifa?
Este comentário foi feito pelo moderador no site
Dimensão io ho Excel 2010
Este comentário foi feito pelo moderador no site
obrigado, código muito interessante.
Este comentário foi feito pelo moderador no site
O código funciona bem se as strings vermelhas forem contínuas. Caso estejam separados na célula de origem, são colados uns aos outros na célula de saída. Quero dizer, não há espaço na saída se as cadeias de texto vermelhas estiverem distantes umas das outras. Você pode, por favor, fornecer uma solução para isso?
Este comentário foi feito pelo moderador no site
Tente isso, deve funcionar
Função GetColorText(pRange As Range) Como String
'Atualizado para obter vários
Dim xOut As String
Dim xValue As String
Dim i tanto tempo
Dim era vermelho como booleano
xValue = pRange.Text

Para i = 1 Para VBA.Len(xValue)

Se pRange.Characters(i, 1).Font.Color = vbRed Then
xOut = xOut & VBA.Mid(xValue, i, 1)
eraVermelho = Verdadeiro
ElseIf wasRed = True Then
eraVermelho = Falso
xOut = xOut & ";"
Se acabar

Seguinte

GetColorText = xOut
Função final

Este comentário foi feito pelo moderador no site
Obrigado uma tonelada funcionou perfeitamente bem. Você é um salvador Tim :-) 
Este comentário foi feito pelo moderador no site
Ainda não consegui extrair o texto azul (#1166BB). Existe uma maneira de usar o Hex: #1166BB para obter o texto colorido que preciso?
Este comentário foi feito pelo moderador no site
Oi, Robert E Perez, atualizei o código VBA, agora ele suporta a obtenção de texto colorido por código rgb. Você pode tentar o código novamente.
Este comentário foi feito pelo moderador no site
Tenho um texto específico em uma célula separada por Vírgula e Tendo cor para cada texto. Ao usar a função Delimiter, não consigo manter a cor da fonte do texto. Agradeço sua ajuda!
Este comentário foi feito pelo moderador no site
Oi, jdhjjd, eu não entendo sua pergunta claramente. Deseja extrair o texto específico das células e manter a cor da fonte conforme a captura de tela mostrada abaixo?
https://www.extendoffice.com/images/stories/comments/sun-comment/split_and_keep_font_color.png
ou dividir células e manter a cor da fonte de cada texto?
https://www.extendoffice.com/images/stories/comments/sun-comment/split_and_keep_font_color-2.png
Não há comentários postados aqui ainda
Deixe o seu comentário
Postando como convidado
×
Avalie esta postagem:
0   Personagens
Locais sugeridos

Siga-nos

Copyright © 2009 - www.extendoffice.com. | Todos os direitos reservados. Distribuído por ExtendOffice. | | | Mapa do site
Microsoft e o logotipo do Office são marcas comerciais ou marcas registradas da Microsoft Corporation nos Estados Unidos e / ou em outros países.
Protegido por Sectigo SSL