Pegue 1 Url de uma célula do Excel que tenha 3 na mesma

1

Eu tenho uma célula do Excel que contém 3 URLs e algum texto ao redor em uma longa string:

Product Image URL: http://www.Website.com/product_images/y/099/7703_269_ImageDescription1.jpg|Product Image URL: http://www.Website.com/product_images/c/999/7703_269_ImageDescription2.jpg|Product Image URL: http://www.Website.com/product_images/r/560/7703_269_ImageDescription3.jpg

Eu preciso pegar o primeiro URL sem espaços para que eu possa enviá-lo para outra célula por conta própria (eu preciso fazer isso para cada linha).

Eu pesquisei as soluções, mas não consigo encontrar uma que corresponda à minha situação e sou novo nas fórmulas do Excel. Obrigado pelo seu tempo :)

    
por Tron 01.03.2017 / 19:28

2 respostas

1

Se supusermos que você tem seu texto em A1:

Product Image URL: http://www.Website.com/product_images/y/099/7703_269_ImageDescription1.jpg|Product Image URL: http://www.Website.com/product_images/c/999/7703_269_ImageDescription2.jpg|Product Image URL: http://www.Website.com/product_images/r/560/7703_269_ImageDescription3.jpg

Você pode escrever sua fórmula assim:

=MID(A1,FIND(":",A1)+2,FIND("|",A1)-FIND(":",A1)-2)

E isso lhe dará este resultado:

http://www.Website.com/product_images/y/099/7703_269_ImageDescription1.jpg

A explicação da fórmula é:

MID(text, start, length)

Retornará um subtexto de um texto, nesse caso, a partir de A1, encontraremos o primeiro ":" e, a partir daí, encontraremos o próximo "|" e retornaremos o texto.

FIND(text_searched, text_complete)

Retorna a posição do texto que estamos pesquisando no texto completo.

Então, no MID nós colocamos todo o texto, o início do subtexto é a posição do ":" +2, para ignorar o ":" e o próximo espaço. O comprimento do subtexto é definido pela posição do "|" menos a posição do ":".

Editar: Caso sua célula A1 tenha apenas um valor, o segundo parâmetro do MID precisa ser maior que o tamanho do texto que queremos obter, e pode ficar como:

=MID(A1,FIND(":",A1)+2,LEN(A1))

Onde sabemos que o LEN (A1) é maior que um subconjunto de A1.

Segunda edição:

Se mesclarmos os dois, só precisamos verificar se há erro ao procurar o "|" Caracteres. Se for encontrado, retorne o comprimento até que, se não for encontrado, retorne o LEN (A1).

=MID(A1,FIND(":",A1)+2,IF(ISERROR(FIND("|",A1)),LEN(A1),FIND("|",A1)-FIND(":",A1)-2))

    
por 01.03.2017 / 20:08
0

Após algumas tentativas e erros de pesquisa:

= MID (G2, FIND ("URL da imagem do produto:", G2) +19, (FIND ("| URL da imagem do produto:", G2) - (FIND ("Product Image URL:", G2) +19 )))

Onde G2 é o campo com a URL.

    
por 01.03.2017 / 20:05