PROC V para achar hora e data

Anônima
2014-10-17T10:22:37+00:00

Bom Dia,

Tenho duas planilhas A e B, na planilha B contem as seguintes informações, Funcionário, Dia/Mês/Ano, Horário Entrada e Horário de Saída, a minha planilha A é um espelho de um cartão de ponto, preciso que a Planilha A busque na planilha B as seguintes informações: "Quando nome de fulano constar na Planilha B, ela leia a Data e horário de entrada e saída. 

Estou usando a seguinte formula: =PROCV($B$3;'Planilha B'!A:D;3;FALSO), a principio deu certo, porem, não estou conseguindo colocar na formula que ele procure a data e retorne o horário de cada data, veja abaixo o resultado que está dando, notem que os horários são iguais para todos os dias:

PLANILHA A

EMPRESA: DUVIDA
TIPO: CONTRATO
FUNCIONÁRIO IVAN SILVA
FUNÇÃO: MECÂNICO
MÊS: 09/2014
Dia da semana Data Entrada Saída Intervalo Retorno Intervalo Saída
segunda-feira 01/09/2014 6:45:00 17:14:00
terça-feira 02/09/2014 6:45:00 17:14:00
quarta-feira 03/09/2014 6:45:00 17:14:00
quinta-feira 04/09/2014 6:45:00 17:14:00
sexta-feira 05/09/2014 6:45:00 17:14:00
sábado 06/09/2014
domingo 07/09/2014
segunda-feira 08/09/2014
terça-feira 09/09/2014
quarta-feira 10/09/2014
quinta-feira 11/09/2014
sexta-feira 12/09/2014
sábado 13/09/2014
domingo 14/09/2014
segunda-feira 15/09/2014
terça-feira 16/09/2014

PLANILHA B

FUNCIONARIO DATA ENT SAI
IVAN SILVA 01/09/2014 06:45 17:14
IVAN SILVA 02/09/2014 06:46 18:09
IVAN SILVA 03/09/2014 06:45 17:06
IVAN SILVA 04/09/2014 06:40 17:14
IVAN SILVA 05/09/2014 06:44 16:12
Microsoft 365 e Office | Excel | Para uso doméstico | Windows

Pergunta bloqueada. Essa pergunta foi migrada da Comunidade de Suporte da Microsoft. É possível votar se é útil, mas não é possível adicionar comentários ou respostas ou seguir a pergunta.

0 comentários Sem comentários

Resposta aceita pelo autor da pergunta

Anônima
2014-10-17T11:25:13+00:00

Olá Ivan!

A resposta que deixei no seu tópico anterior não te atendeu?

http://answers.microsoft.com/pt-br/office/forum/office_2013_release-excel/procv-para-horas/f0910b6b-4436-46a0-869c-22c4f26051ec

Bom, da forma que você está aplicando a função PROCV não será possível trazer os valores desejados. O PROCV vê faz a busca de uma referência indicada e trará o primeiro valor encontrado. Note que na sua fórmula não tem nenhuma refêrencia ao dia, somente ao nome, por isso que a função está trazendo o primeiro valor encontrado para o nome IVAN SILVA em todas as linhas.

Não é possível colocar duas colunas de busca no PROCV, mas existem várias alternativas para trazer o resultado desejado:

1ª Alternativa: Uma forma é você criar uma coluna de apoio antes da coluna funcionário da planilha B e nessa planilha concatenar os valores do nome do funcionário e dia (fórmula em A2 ficaria: =B2&C2) e então na planilha As fórmulas utilizando o PROCV ficaria:

para entrada: =PROCV($B$3&$B7;'Planilha B'!$A:$E;4;FALSO)

para saída:     =PROCV($B$3&$B7;'Planilha B'!$A:$E;5;FALSO)

2ª Alternativa: Utilizar a função DESLOC em conjunto com CORRESP para gerar um novo intervalo de busca dentro do PROCV. As fórmulas ficariam:

para entrada: =SEERRO(PROCV($B7;DESLOC('Planilha B'!$A$1;CORRESP($B$3;'Planilha B'!$A:$A;0)-1;1;CONT.SE('Planilha B'!$A:$A;$B$3);3);2;FALSO);"")

para saída:    =SEERRO(PROCV($B7;DESLOC('Planilha B'!$A$1;CORRESP($B$3;'Planilha B'!$A:$A;0)-1;1;CONT.SE('Planilha B'!$A:$A;$B$3);3);3;FALSO);"")

Porém para aplicar esse método seria obrigatório os nomes da coluna de funcionários da planilha B estejam ordenados.

3ª Alternativa: Utilizar uma fórmula matricial para trazer esses valores:

para entrada: =MÍNIMO(SE(('Planilha B'!$A$2:$A$6=$B$3)*('Planilha B'!$B$2:$B$6=$B7);'Planilha B'!$C$2:$C$6;""))

para saída:     =MÍNIMO(SE(('Planilha B'!$A$2:$A$6=$B$3)*('Planilha B'!$B$2:$B$6=$B7);'Planilha B'!$D$2:$D$6;""))

Essa duas fórmula devem ser inseridas com CTRL + SHIFT + ENTER.

Veja qual é a melhor alternativa para seu trabalho e qualquer dúvida fale.

Abraços!

Esta resposta foi útil?

2 pessoas acharam esta resposta útil.
0 comentários Sem comentários

3 respostas adicionais

Classificar por: Mais útil
  1. Anônima
    2014-10-20T09:25:51+00:00

    Obrigado Rafael,

    Na verdade o erro estava acontecendo pela formatação da celula, estava com formato data hora e desda forma a celula não recohece, apos alterar a formatação, a formula funcionou.

    Esta resposta foi útil?

    1 pessoa achou esta resposta útil.
    0 comentários Sem comentários
  2. Anônima
    2014-10-18T02:24:28+00:00

    Olá Ivan!

    Não deu certo desse modo? É estranho a sua descrição, pois a fórmula está exatamente igual e outra com unica alteração do deslocamento da linha da referência de busca, como deve ser. E estranho apresentar #VALOR!, pois a função SEERRO no começo da fórmula seria justamente para suprimir a descrição de erro.

    Eu fiz as fórmulas simulando as planilhas exatamente como você postou nas tabelas... tente algum dos outros métodos. Creio que o primeiro método é de mais simples entendimento para aplicar.

    Abraços!

    Esta resposta foi útil?

    1 pessoa achou esta resposta útil.
    0 comentários Sem comentários
  3. Anônima
    2014-10-17T14:06:58+00:00

    Obrigado pela resposta, creio que esta tudo correto, porem, quando eu arrasto a formula, ela apresenta o seguinte erro:

    01/09/2014 6:45:00 17:14:00 10:29
    02/09/2014 #VALOR!
    03/09/2014 #VALOR!
    04/09/2014 #VALOR!
    05/09/2014 #VALOR!
    06/09/2014 #VALOR!
    07/09/2014 #VALOR!
    08/09/2014 #VALOR!
    09/09/2014 #VALOR!
    10/09/2014 #VALOR!
    11/09/2014 #VALOR!

    Pode me ajudar? O que estou fazendo de errado nesse caso? Abaixo segue a formula da linha onde aparece o erro:

    =SEERRO(PROCV($B8;DESLOC('Planilha B'!$A$1;CORRESP($B$3;'Planilha B'!$A:$A;0)-1;1;CONT.SE('Planilha B'!$A:$A;$B$3);3);2;FALSO);"")

    Agora abaixo a linha que ficou correta:

    =SEERRO(PROCV($B7;DESLOC('Planilha B'!$A$1;CORRESP($B$3;'Planilha B'!$A:$A;0)-1;1;CONT.SE('Planilha B'!$A:$A;$B$3);3);2;FALSO);"")

    Esta resposta foi útil?

    0 comentários Sem comentários