Analisar dados de colunas de uma tabela


#1

Olá galera!

Sou novo por aqui e estou com dificuldade em solucionar um caso que compartilho com vcs e agradeço desde já se puderem me ajudar.

Minha Planilha1 tem o objeto Tabela3. Neste tabela é informado o tipo de erro nos cabeçalhos das colunas A1:D1 (Tabela3[[#Cabeçalhos];[Erro1]:[Erro4]]) e; no cabeçalho da coluna E1 ([@[Resumo dos Erros]]):

Nas colunas com a descrição do erro é informado 0 = “OK” ou 1 = “Tem erro”. Na coluna [@[Resumo dos Erros]] eu preciso listar somente os erros. Tratar isto través da função SE é inviável. Acredito que é possível tratar isto através do VBA porém não conheço. Venho pesquisando a três dias na internet e não encontrei exemplos de LOOP no VBA referenciando o nome da tabela e colunas, tipo ao invés de referenciar A1:D1 referenciar (Tabela3[[#Cabeçalhos];[Erro1]:[Erro4]]).

Abaixo o contorno que consegui fazer através da função SE porém o objetivo era exibir somente os erros.

Espero ter deixado claro minha dificuldade. Desde já agradeço a todos.

Deus os abençoe!!


#2

Olá, @moreira.erick. Tudo bem?

Acredito que da forma que solucionei aqui você consiga o resultado que deseja. Utilizei a função SE de uma outra maneira:

=SE(A2=1;$A$1;"")&SE(B2=1;SE(A2=0;$B$1;", "&$B$1);"")&SE(C2=1;SE(E(B2=0;A2=0);$C$1;", "&$C$1);"")&SE(D2=1;SE(E(C2=0;B2=0;A2=0);$D$1;", "&$D$1);"")

Espero que ajude!


#3

Olá @xavier, tudo bem graças a Deus! E espero que contigo também!

Cara, vc me ajudou a olhar o problema de um ângulo diferente e pensar simples rs

O exemplo que citei foi para ilustrar a necessidade e facilitar a compreensão. Na planilha que estou trabalhando são 17 colunas de erros e algumas delas, dependendo do valor, a mensagem de erro é diferente (sinceramente não entendo o pq não trataram estes erros em linhas ao invés de colunas).

Enfim, com sua ajuda resolvi encarar os inúmeros SEs aninhados :disappointed_relieved: e atingi o meu objetivo. :slight_smile:

Agora fico pensando que talvez com a ajuda do VBA seria mais fácil utilizando um LOOP talvez :thinking:

Valeu @xavier!!!