Notifications
Clear all

Identificar termos parcialmente repetidos

17 Posts
5 Usuários
0 Reactions
3,628 Visualizações
(@paiva87)
Posts: 69
Trusted Member
Topic starter
 

Olá pessoal, como faço pra identificar termos parcialmente repetidos pelo menos uma única vez em uma coluna e destacá-los?

Meu problema não se resolve com: "Formatação condicional -> Realçar regras das células -> Valores duplicados"

O que quero é, por exemplo para a seguinte lista:

www.meusite.com.br
www.seusite.com
www.teste.com
meusite.com.br/minha-pagina

Com o sublinhado representado o destaque. Porém, eu gostaria de poder adicionar alguns termos para serem excluídos dessa análise, como, por exemplo, o "www.", ".com" e ".com.br".

 
Postado : 30/08/2016 8:32 am
(@paiva87)
Posts: 69
Trusted Member
Topic starter
 

Moderador favor apagar esse tópico. Fiz outro tópico onde expliquei melhor o que preciso, aqui: viewtopic.php?f=5&t=21650

 
Postado : 30/08/2016 8:45 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Paiva

Eu vi 2 tópicos iguais e apaguei primeiro aquele, depois acessei este.

Descreva neste mesmo tópico que eu apago as mensagens anteriores.

[]s

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 30/08/2016 9:28 am
Issamu
(@issamu)
Posts: 605
Honorable Member
 

Veja uma proposta de solução.
Não fiz exatamente o que você pediu, pois destacar um pedaço de um texto parcialmente repetido dentro do conteúdo da célula só com VBA e creio que seria demasiadamente complexo.
Na minha proposta faço uso de funções conhecidas e também recurso matricial para encurtar a formula quando analisa o tipo de extensão do site (coloquei as extensões conhecidas numa tabela, e se houverem outras extensões, basta adicionar na tabela) e fiz uso também de uma UDF para trazer o endereço das células com repetição (veja mais detalhes no meu blog: https://excelmaniacos.com/2015/08/19/udf-valoresdovetor-trazendo-valores-de-um-vetor-ou-matriz-de-dados/).
Você poderia incrementar ainda com formatação condicional, mas como você citou que não quer, eu não apliquei no modelo.

Rafael Issamu F. Kamimura
Moderador Oficial Microsoft Community - MCC (Contribuidor do Microsoft Community)
http://zip.net/bjrt0X - http://zip.net/bhrvbR
Foi útil? Clique na mãozinha
Conheça: http://excelmaniacos.com/

 
Postado : 30/08/2016 10:07 am
deciog
(@deciog)
Posts: 0
Trusted Member
 

paiva87

Minha sugestão

Décio

Marque o tópico como Resolvido se foi solucionado seu problema.
Brasil, São Paulo - SP
Décio Gassi

 
Postado : 30/08/2016 10:21 am
(@paiva87)
Posts: 69
Trusted Member
Topic starter
 

Olá Decio, primeiramente obrigado, é quase isso que eu preciso. Na verdade eu tinha explicado melhor em outro tópico que foi apagado por engano, então não teria como você adivinhar.

O que eu quero é extrair o domínio das urls. O domínio é basicamente o nome do site + a tdl (que é a terminação do site, por exemplo ".com" ou ".com.br").

Assim, eu entraria com uma lista de urls, e seus domínios seriam extraídos na coluna seguinte, por exemplo:

http:// meusite.com.br/pagina-1 -> meusite.com.br
http:// yyy.meusite.com/pagina-2 -> meusite.com
seusite.com/pagina-3 -> seusite.com
http:// yyy.teste.net.br -> teste.net.br
http:// yyy.maisumsite.org -> maisumsite.org
http:// yyy.outroexemplo.net -> outroexemplo.net

obs.: Nos exemplos acima, eu substitui "w" por "y", e coloquei espaçamentos para não criar links no post.

O início das urls é sempre marcado por:
http://
http:// www.
www.
ou sem nada, já indo direto para o domínio, por exemplo "meusite.com"

Já o final pode ter:
.com
.com.br
.net
.net.br
.org
E algumas outras terminações que seria interessante eu mesmo poder adicionar no arquivo conforme a necessidade.

Agradeço se você mesmo ou outro usuário poder ajudar.

abs

 
Postado : 01/09/2016 11:41 am
(@paiva87)
Posts: 69
Trusted Member
Topic starter
 

Décio, eu fui dar uma olhada na sintaxe da função SUBSTITUIR, e cheguei a conclusão de que a fórmula que melhor se encaixaria no meu caso é essa:

=SUBSTITUIR(SUBSTITUIR(SUBSTITUIR(D7;" http://";"");"www2.";"");"www";"")

Com isso, eu tenho, por exemplo:

http:// yyy2.meusite.com/exemplo.htm -> meusite.com/exemplo.htm
http:// yyy.seusite.com/pagina-1 -> seusite.com/pagina-1

(substitui "w" por "y")

O problema é agora cortar a barra e tudo que vem depois dela, para ter apenas:
meusite.com
seusite.com

Alguém sabe como fazer isso?

 
Postado : 01/09/2016 12:45 pm
Issamu
(@issamu)
Posts: 605
Honorable Member
 

Olá Paiva!
Vc chegou a conferir o arquivo que postei?
Dentre os exemplos que você postou agora, eu vi que tem o caso do " http://meusite", que não tinha na relação da pergunta inicial. Por isso atualizei o arquivo levando em conta esta possibilidade também.

Rafael Issamu F. Kamimura
Moderador Oficial Microsoft Community - MCC (Contribuidor do Microsoft Community)
http://zip.net/bjrt0X - http://zip.net/bhrvbR
Foi útil? Clique na mãozinha
Conheça: http://excelmaniacos.com/

 
Postado : 01/09/2016 12:49 pm
(@paiva87)
Posts: 69
Trusted Member
Topic starter
 

Issamu, a lista de extensões que você colocou seria muito útil para mim. A coluna D creio que é dispensável, pois consigo o mesmo objetivo com "Formatação condicional -> Realçar regras das células -> Valores duplicados".

Pelo que pesquisei aqui, creio que também dá pra fazer com algo do tipo DIREITA(LOCALIZAR()), o problema é que eu gostaria de colocar tudo numa só cédula.

 
Postado : 01/09/2016 12:51 pm
(@paiva87)
Posts: 69
Trusted Member
Topic starter
 

Só complementando, a parte do DIREITA(LOCALIZAR()) seria para remover a "/" e tudo que vier depois dela.

 
Postado : 01/09/2016 12:57 pm
Issamu
(@issamu)
Posts: 605
Honorable Member
 

Tudo numa só célula a fórmula fica:

=SE(ÉERROS(LOCALIZAR(".";SUBSTITUIR(ESQUERDA(A2;SOMA(SEERRO(LOCALIZAR(Tabela1[EXTENSÕES];A2);0))-1);"http://";"")));SUBSTITUIR(ESQUERDA(A2;SOMA(SEERRO(LOCALIZAR(Tabela1[EXTENSÕES];A2);0))-1);"http://";"");DIREITA(SUBSTITUIR(ESQUERDA(A2;SOMA(SEERRO(LOCALIZAR(Tabela1[EXTENSÕES];A2);0))-1);"http://";"");NÚM.CARACT(SUBSTITUIR(ESQUERDA(A2;SOMA(SEERRO(LOCALIZAR(Tabela1[EXTENSÕES];A2);0))-1);"http://";""))-LOCALIZAR(".";SUBSTITUIR(ESQUERDA(A2;SOMA(SEERRO(LOCALIZAR(Tabela1[EXTENSÕES];A2);0))-1);"http://";""))))

Fórmula matricial inserida com CTRL+SHIFT+ENTER

Rafael Issamu F. Kamimura
Moderador Oficial Microsoft Community - MCC (Contribuidor do Microsoft Community)
http://zip.net/bjrt0X - http://zip.net/bhrvbR
Foi útil? Clique na mãozinha
Conheça: http://excelmaniacos.com/

 
Postado : 01/09/2016 1:02 pm
(@paiva87)
Posts: 69
Trusted Member
Topic starter
 

Vi também que dá pra fazer com a função POS.

Na verdade, eu preciso manter a extensão, na planilha que você me enviou ela está sendo apagada. Creio que para esse caso específico a tabela de extensões pode ser removida.

A confusão é porque eu fiz um outro post explicando melhor o que preciso e ele foi apagado por engano.

 
Postado : 01/09/2016 1:04 pm
(@paiva87)
Posts: 69
Trusted Member
Topic starter
 

Acho que dá pra resolver com algo do tipo: http://forum.imasters.com.br/topic/4165 ... -variavel/

Texto := Copy(Texto, 5, 200);
Texto := Copy(Texto, 1, Pos('#', Texto) - 1);

A questão é também como juntar com o resto da fórmula: =SUBSTITUIR(SUBSTITUIR(SUBSTITUIR(D7;" http://";"");"www2.";"");"www";"")

 
Postado : 01/09/2016 1:27 pm
DJunqueira
(@djunqueira)
Posts: 772
Prominent Member
 

Solução alternativa respeitando as restrições referidas.

Se sua dúvida foi respondida marque o tópico como RESOLVIDO usando o botão com marca verde.

 
Postado : 01/09/2016 10:17 pm
deciog
(@deciog)
Posts: 0
Trusted Member
 

paiva87

Olha agora se é isso que desejas

Decio

Marque o tópico como Resolvido se foi solucionado seu problema.
Brasil, São Paulo - SP
Décio Gassi

 
Postado : 02/09/2016 3:48 am
Página 1 / 2