Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Dúvidas sobre cálculos, funções simples e aninhadas, fórmulas matriciais, etc.
  • Avatar do usuário
#21858
Estou precisando preencher a tabela de pesquisa para recuperar o resultado posterior (coluna em amarelo) a partir do código do cliente, exame e uma data de consulta (linhas 14 a 21). Se a data da consulta coincidir com a data do exame na tabela de dados, ambos os resultados anterior e posterior deverão ser preenchidos com o resultado encontrado. Caso não coincida, devo tentar obter o resultado do exame imediatamente anterior e posterior em relação a data da consulta (Obs: só posso trazer os resultados se a data da consulta for no mesmo dia do exame sem considerar as horas e minutos).

Ex1: na linha 14 para o paciente 10, exame "Hemacias" e data "01/01/2016 10:00:00" temos um exame anterior (as 09:20) e outro posterior (as 11:30) na tabela de dados, logo a planilha deve exibir o valor de 3,17 e 3,52.
Ex2: na linha 15 para o paciente 10, exame "Hemacias" e data "01/01/2016 12:00:00" só temos o exame anterior (as 11:30). O próximo exame (02/01/2016 10:30:00) é referente a outro dia diferente da data solicitada na pesquisa, logo não deverei preencher ou informar #N/D (não encontrado).
Ex3: na linha 18 para o paciente 10, exame "Hemoglobina" e data "01/01/2016 18:00:00" não temos nenhum exame para este dia, só temos no dia seguinte (02/01/2016). Neste caso tenho que exibir #N/D para ambos os resultados.

Eu consegui utilizar a fórmula matricial {=PROCV(C14;SE($A$3:$A$10=A14&TEXTO(C14;"dd/mm/aaaa")&B14;$C$3:$E$10);3;VERDADEIRO)} para trazer o resultado anterior conforme as regras que informei anteriormente. O meu problema é com relação a próxima coluna que deve trazer o resultado posterior (coluna em amarelo). Pesquisei na internet e só encontrei formas de obter o menor (primeiro), maior (último) registro do dia ou o mais próximo independente se ele for maior ou menor do que o solicitado. É possível utilizar alguma fórmula para trazer os resultados ? Ou serei obrigado a utilizar VBA ? Estou tentando utilizar fórmula pois a tabela original de dados possui mais de 100 mil linhas. Agradeço caso alguém tenha alguma sugestão (eu posso modificar a chave e ordenação das colunas). Obrigado.

Imagem
Você não está autorizado a ver ou baixar esse anexo.
#21878
Veja se é isso.
Você não está autorizado a ver ou baixar esse anexo.
#21887
Amigo,

Segue minha contribuição, eu pintei em verde onde fiz as fórmulas.

Abs
Você não está autorizado a ver ou baixar esse anexo.
#21894
babdallas, muito obrigado pela ajuda. Eu só encontrei um problema com a utilização da sua fórmula: o problema ocorre quando existe uma data de consulta exatamente igual nos dados (veja a linha 17: a data de consulta é 01/01/2016 11:30:00 sendo que existe a linha 4 exatamente no mesmo horário. Para este caso deveria ser exibido 3,52 ao invés de "Não disponível". Deve ser algum pequeno detalhe a ser alterado na sua fórmula. Vou dar uma olhada.

FelipeMGarcia, obrigado pela ajuda. A sua fórmula não está refletindo a regra que eu informei anteriormente na observação("(Obs: só posso trazer os resultados se a data da consulta for no mesmo dia do exame sem considerar as horas e minutos)"). Por exemplo, na linha 15 deveria ter sido exibido "#N/D" ao invés de 3,48 pois não temos na lista de dados nenhuma linha com data posterior a 01/01/2016 12:00 para o mesmo dia da consulta (só vai ter a linha 6 mas é no dia seguinte).

Abs.
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord