Notifications
Clear all

FUNÇÃO PROC não acha palavras que começem com a letra A e B

12 Posts
3 Usuários
0 Reactions
2,527 Visualizações
(@volcano)
Posts: 8
Active Member
Topic starter
 

Bom dia,

estou criando uma curva ABC no excel....
Para os que não sabem, o que é uma curva ABC, pode-se definir tal como uma tabela ou gráfico, nos quais se exibem a porcentagem que determinado serviço corresponde ao valor total de uma obra....

Bom, peguei 53 obras e juntei tudo em uma unica planilha...logo tenho vários serviços repetidos...para cada serviço tenho seu código, custo unitário, preço total, quantidade, unidade etc...

A fim de criar a curva ABC, primeiramente e simplesmente CONSOLIDEI os dados para outra planilha, ou seja para juntar todos os serviços repetidos e somar seus preços totais, certo? Ok...

Bom, para finalizar, para o código, unidade, preço unitário e quantidade, usei a função PROC, porém alguns serviços não foram encontrados, aparecendo aquele famoso erro "#N/D"....

Depois de várias análises, e verificações, cheguei a conclusão que tais itens que não são encontrados na primeira planilha, são aqueles que justamente começam com a letra "A" e letra "B", os serviços com nomes a partir da letra "C" já são encontrados normalmente...

Simplesmente, quando deleto a primeira letra "A" ou "B" a nova planilha localiza os erviço e tudo fica ok....por exemplo: Se eu procurar o serviço "Aterro para rampa de acesso", a função PROC, não localiza o serviço na primeira planilha, mas se eu tirar a letra "A" da palavra "Aterro" a função funciona!!!

Alguém tem ideia do que pode estar acontecendo nesse planilha diabólica?! :evil:

 
Postado : 30/01/2017 7:23 am
(@volcano)
Posts: 8
Active Member
Topic starter
 

 
Postado : 30/01/2017 8:03 am
DJunqueira
(@djunqueira)
Posts: 772
Prominent Member
 

Anexa a planilha sem os dados sensíveis p/ q possamos ver melhor o q está ocorrendo.

Se sua dúvida foi respondida marque o tópico como RESOLVIDO usando o botão com marca verde.

 
Postado : 30/01/2017 8:32 am
(@volcano)
Posts: 8
Active Member
Topic starter
 

Anexa a planilha sem os dados sensíveis p/ q possamos ver melhor o q está ocorrendo.

Desculpe pela ignorância, mas como consigo anexar a planilha por aqui? ou você diz enviar um link para baixar a planilha?

 
Postado : 30/01/2017 9:04 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Do help/ajuda do próprio Excel (atenção ao destaque em destaque):

SINTAXE

PROC(valor_procurado, vetor_proc, [vetor_result])

A sintaxe da forma vetorial da função PROC tem os seguintes argumentos :

valor_procurado Obrigatório. Um valor que PROC procura no primeiro vetor. valor_procurado pode ser um número, um texto, um valor lógico ou um nome ou uma referência associado a um valor.

vetor_proc Obrigatório. Um intervalo que contém apenas uma linha ou uma coluna. Os valores em vetor_proc podem ser um texto, números ou valores lógicos.
Importante Os valores em vetor_proc devem ser colocados em ORDEM CRESCENTE: ..., -2, -1, 0, 1, 2, ..., A-Z, FALSO, VERDADEIRO; caso contrário, PROC poderá não retornar o valor correto. Textos em maiúsculas e minúsculas são equivalentes.

vetor_result Opcional. Um intervalo que contém apenas uma linha ou coluna. O argumento vetor_result deve ter o mesmo tamanho de valor_procurado.

COMENTÁRIOS
Se a função PROC não conseguir localizar valor_procurado, a função corresponderá o maior valor em valor_procurado que seja menor do que ou igual a valor_procurado.
Se valor_procurado for menor do que o menor valor em vetor_proc, PROC retornará o valor de erro #N/D.

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 30/01/2017 9:10 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Dito tudo isso, prevejo duas soluções:

- Classifique a tabela onde estão os dados de busca, classifique em ordem crescente pela coluna da busca

- Prefira usar o PROCV() ou ÍNDICE()/CORRESP() que são muito mais seguros para o que vc está tentando fazer, mesmo que 250 vezes mais lentos que o PROC(), ainda valem a pena pois garantem que vc encontra a informação, independentemente da classificação da tabela de origem.

FF

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 30/01/2017 9:15 am
(@volcano)
Posts: 8
Active Member
Topic starter
 

Puts mano....esqueci que esse demon tinha que classificar em ordem alfabética!!!

Porém mesmo assim ainda não procura os nomes de maneira exata como vc msm disse, e foi justamente isso que levou ao erro doido de não achar os serviços com as letra "A" e "B"... (engraçado ter uma função que praticamente engane você...)

A função PROCV() serviu perfeitamente = erro 0%

Previu certo ninja!!!! vlw abraço!

 
Postado : 30/01/2017 11:33 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

.
Volcano, o Fernando já disse, e eu reforço ... A função PROCV é boa, mas a função ÍNDICE/CORRESP é mmuuiittoo melhor!!!
.

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 30/01/2017 5:26 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

.A função PROCV é boa, mas a função ÍNDICE/CORRESP é mmuuiittoo melhor!!!.

Em tempo, ambas fazem exatamente a mesma coisa, exatamente no mesmo tempo.
MAS, o ÍNDICE/CORRESP é mais maleável e é melhor sob o aspecto que é possível procurar qualquer coluna, e retornar qualquer coluna, não necessáriamente procurar na da esquerda e devolver qualquer à direita dela.
Entenda, o fato de ser mais maleável não a torna melhor...

o PROC() tb permite isso e não por isso é melhor. Cada uma tem suas vantagens e desvantagem...

Vamos lá:
PROC()
Vantagens:
- Estupidamente mais rápido que todas as alternativas
- Permite buscar tanto na horizontal qto na vertical
- Permite buscar da esquerda pra direita ou da direita pra esquerda, de baixo pra cima e de cima pra baixo
- Basta apontar duas matrizes com mesmo número de elementos, não importando sua orientação
Desvantagem:
- Quando não encontra algo, pode retornar #N/D ou um valor errado
- Precisa necessariamente que os dados debusca estejam classificados em ordem crescente

PROCV()
Vantagens:
- Permite escolher entre fazer busca exata ou por aproximação
- É de fácil leitura
Desvantagens:
- É 250 vezes mais lenta que o PROC()
- Permite somente buscas na primeira coluna à esquerda retornando qualquer coluna à direita
- Só funciona na vertical

PROCH()
Vantagens:
- Permite escolher entre fazer busca exata ou por aproximação
- É de fácil leitura
Desvantagens:
- É 250 vezes mais lenta que o PROC()
- Permite somente buscas na primeira linha retornando qualquer linha abaixo
- Só funciona na horizontal

ÍNDICE/CORRESP
Vantagens:
- Permite buscas horizontais e verticais, em todos os sentidos
- Permite escolher entre fazer busca exata ou por aproximação
Desvantagens:
- É 250 mais lenta que o PROC()
- É mais difícil leitura e entendimento
- Usa duas funções ao invés de uma *(portanto não sei o que é lento, o índice(), ou o corresp(), acho que o CORRESP(), mas é chute

Cada pessoa pode considerar uma função melhor ou pior, baseado na sua necessidade. Se eu estiver procurando desempenho, e tenho a certeza que meus dados sempre são classificados, oras, o PROC() é a melhor opção.
Se eu quero de fato uma garantia que encontro o valor e não me preocupar com desempenho, as outras são melhores opções.
Se eu tenho certeza que a coluna da esquerda é sempre a coluna da busca, o PROCV() pode ser a melhor opção pq é mais fácil de ler e escrever e mais pessoas conhecem e podem dar manutenção.
Se eu preciso necessariamente buscar da direita pra esquerda, daí o PROCV() não atende, podemos usar o PROC() ou o ÍNDICE/CORRESP...

Enfim, o que é melhor pra você, pode não ser o melhor pro outro. É tudo muito relativo.

FF

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 31/01/2017 8:14 am
DJunqueira
(@djunqueira)
Posts: 772
Prominent Member
 

Obs.:

PROCV() invertida pode ler da direita p/ esquerda, mas tem q usar em conjunto com outra função p/ isso.

Se sua dúvida foi respondida marque o tópico como RESOLVIDO usando o botão com marca verde.

 
Postado : 31/01/2017 6:10 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

.
Fernando, desculpe se te fiz perder esse tempo todo para discordar do que falei ... na verdade eu quis dizer isto mesmo, a índice/corresp é mais maleável por permitir a busca tanto para a direita quanto para a esquerda, mas quanto ao resultado ambas fazem a mesma coisa!!
.

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 31/01/2017 6:28 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Copa, não perdi nem 10 minutos...
Fiz e faço com prazer, sempre! :)

Obrigado pela oportunidade!

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 31/01/2017 6:38 pm