Microsoft Excel - Fórmula / Função para analisar informações para colunas em uma célula separadas por '|'

1

Estou trabalhando com uma exportação de CSV de informações sobre pedidos de produtos. A coluna A contém o ID da transação e a problemática Coluna B é formatada assim:

product_name: Pacote de Sobrevivência | product_option_name: (1) MEGA Survival Pack | quantidade: 1 | preço: 15.0 | total: 15.0; product_name: Tempo Hipopótamo Adesivo | product_option_name: (5) Tempo Hipopótamo Adesivos | quantidade: 1 | preço: 2.0 | total: 2.0; nome_do_produto: Waldo Hippo Adesivo | product_option_name: (5) Waldo Hipopótamo | quantidade: 1 | preço: 2.0 | total: 2.0

Existe uma fórmula que eu possa usar para dividir o produto, quantidade e preço em colunas separadas?

Obrigado por qualquer ajuda, não estou ansioso para fazer isso manualmente.

    
por KCW 11.11.2016 / 15:20

2 respostas

1

Uma maneira rápida de fazer isso seria o seguinte.

Primeiro, salve os dados em um arquivo de texto (somente texto). Em seguida, abra o arquivo de texto no Excel e a função de importação será exibida. Escolha 'Delimitado' e depois escolha a outra caixa e digite "|" (está acima da minha barra invertida no meu computador. Parece dois traços verticais na tecla). clique em next e em seguida end e o Excel importará para as colunas.

No entanto, você pode fazer algumas limpezas, porque as palavras do cabeçalho serão inseridas nessa célula, assim como os dados. Em vez de qualquer fórmula, eu usaria localizar e substituir (CTRL H). Ele faz o trabalho muito mais rápido para remover os títulos. Estou supondo que você não quer nenhuma das palavras do ":".

Então, eu usaria "*:" na sua caixa de busca e deixaria a caixa de substituição vazia. Isso eliminará tudo o que resta do ":" e incluí um espaço para que você também exclua o espaço após o ":". Personalize isso para o que você realmente quer.

Esta é uma maneira muito rápida de se livrar de dados que você não precisa.

Felicidades

    
por 12.11.2016 / 00:20
0

Em C1 , digite:

=TRIM(MID(SUBSTITUTE($B1,"|",REPT(" ",999)),COLUMNS($A:A)*999-998,999))

e copie em:

    
por 11.11.2016 / 16:07