Eu quero criar uma matriz forma uma planilha de dados em colunas

0

Eu tenho uma planilha que se parece com isso:

Eu quero (automaticamente) criar uma matriz com esta aparência:

Qual é a melhor maneira de conseguir isso?

    
por Susan McCoy 25.01.2017 / 22:45

1 resposta

2

Isso é fácil de fazer com fórmulas. Para simplificar, eu coloquei a matriz em Colunas C - N (e além) da planilha primária; movê-lo para outra folha (página / tab) é trivial.

Este é um trabalho para a função SEARCH , que procura uma string dentro da outra, como "anti" dentro de "frenética". Nós vamos usá-lo para procurar por cada propriedade individual (“Analgésico”, “antibacteriano”, etc.) na lista de propriedades (“Anti-séptico, antifúngico, analgésico, antitumoral, etc.”). SEARCH retorna a posição da substring - por exemplo, SEARCH("anti", "frantic") retorna 3, porque "a" é o terceiro personagem de "frenético". Nós não nos importamos com isso; nos importamos com o fato de que, se a primeira string estiver presente na segunda, SEARCH retornará um número, e caso contrário, retorna um erro. Então, se colocarmos ISERROR(SEARCH(C$1, $B2)) na célula C2 , ele retorna FALSE se "anti-séptico" ( C1 ) estiver na lista de propriedades para Lavender ( B2 ) e TRUE caso contrário. Então

=IF(ISERROR(SEARCH(C$1, $B2)), "", "x")

exibe x se a propriedade estiver na lista e em branco se não estiver.

Mas isso é uma simplificação excessiva. Se uma lista de propriedades incluir "antibacteriano (poderoso)", então, uma pesquisa por "antibacteriano" será bem-sucedida. Sua ilustração da sua matriz desejada sugere que você não quer que isso aconteça. Há um truque padrão para isso: pesquisar "antibacteriano" (com vírgulas no começo e no fim) para encontrar "antibacteriano" como uma entrada completa na lista. Mas isso não vai corresponder se "antibacteriano" for a primeira ou a última entrada da lista - então adicionamos vírgulas no começo e no final da lista também.

Então, coloque =IF(ISERROR(SEARCH(", "&C$1&",", ", "&$B2&",")), "", "x") na célula C2 e arraste para baixo e para a direita:

    
por 07.02.2017 / 01:44