Eu tenho um serviço (phplist, um gerenciador de newsletter) que exporta uma lista de usuários com vários campos. No final, cada usuário tem uma ou mais listas para as quais se inscreveu.
O problema é que a tabela não é ordenada como eu gostaria e, em vez de criar uma nova coluna para cada lista, cada linha cria as colunas necessárias. Este é um exemplo:
Oqueeuqueroé,seeutiver,porexemplo,oitoboletinsinformativos(listas),paraqueoExcelpossaconverteressatabelaemumaquecrieascolunasapropriadasepreenchaosdados.Oresultadodatabelaanteriorconvertidaseriaeste:
Ou algo similar (em vez de um Sim ou em branco, eu poderia ter um Sim e um Não, qualquer coisa). Dessa forma, eu poderia filtrar a tabela por lista, o que é impossível com a minha tabela atual: as colunas na tabela de origem, como você pode ver, podem conter listas diferentes em cada linha. Isso é possível no Excel?
Solução final:
Graças a W_Whalley, consegui encontrar a resposta real para o problema. Se alguém usou o PHPList, este gerenciador de newsletters permite que você faça o download da lista de usuários inscritos, mas, como mencionei na pergunta original, ela não fornece as listas em que você está inscrito de uma maneira boa. Na verdade, ele fornece uma coluna final com todas as listas na mesma célula. Isso é um pouco diferente do problema que eu considerei, porque uma linha dessa tabela seria:
Name | Surname | Email | Lists
John | Perry | [email protected] | List1 List3 List6 List 7
E não
Name | Surname | Email | Lists
John | Perry | [email protected] | List1 | List3 | List6 | List 7
Eu propus a segunda tabela porque achei que era mais fácil de gerenciar, mas não era. Na verdade, eu tive que fazer uma pequena modificação para obter diferentes colunas para cada lista depois de exportar a lista de usuários do PHPList. Isso não era necessário.
Eu exportei a lista de usuários imediatamente, e a solução foi aplicar a fórmula sugerida por W_Whalley considerando apenas uma coluna de cada vez. Fazendo isso por várias colunas funcionou. A fórmula final (usando um exemplo de linha e coluna) foi:
=IF(ISERROR(SEARCH(L$1,$D2)),"no","yes")
Ou, na versão em espanhol do Excel (a que eu estava usando) com uma coluna de exemplo:
=SI(ESERROR(HALLAR($AJ$1;$AI27));"";"SI")
Espero que isso seja útil para alguém lá fora. Obrigado a todos, especialmente W_Whalley!