Excel - Encontre um valor relacionado a ID e preencha outra pasta de trabalho

1

Estou trabalhando em um pequeno hospital na Índia com o seguinte problema: Para um medicamento especial, estamos tendo uma lista com DATA, ID, DOSE, DURAÇÃO, A PRÓXIMA VISITA que nós, como uma lista de trabalho diária (pasta de trabalho 1), significa que uma ID (pessoa) pode aparecer mais de uma vez nesta lista.

Em outra pasta de trabalho, estamos tendo um "Arquivo mestre" (pasta de trabalho 2) com cada ID apenas uma vez, mas o padrão (DATE, DURATION, NEXT VISIT) é repetido toda vez que as pessoas vêm novamente (so DATE2, DURATION2, NEXT VISIT2 )

Estou procurando uma maneira elegante de preencher automaticamente os dados da minha lista diária (pasta de trabalho 1) na planilha mestre (pasta de trabalho 2). Portanto, eu suponho que precisaria de alguma função IF + INDEX / Match + Array para encontrar o ID na pasta de trabalho 1, obter os valores para DATE1, DURATION1, NEXT VISIT2 e preencher a pasta de trabalho 2, do que ir mais abaixo na lista na pasta de trabalho 1 encontre a próxima vez que o paciente veio, pegue os dados e preencha-os novamente na pasta de trabalho 2, mas agora na DATA2 ... e assim por diante.

Eu adiciono duas fotos para explicar o problema.

Folha de diário:

FolhadeDados:

    
por Peter 02.05.2015 / 10:51

2 respostas

0

  1. É possível encontrar os valores com fórmulas. Você só precisa dos cabeçalhos para mostrar números, por exemplo 1 com o formato de 0 "st visit" etc.
  2. Infelizmente, as funções nunca lidam com duas coisas: perda e estouro de dados. Imagine o paciente chegando em uma oitava ocasião e isso não está aparecendo na sua mesa, porque você só a preencheu para 7.

A função que você provavelmente está procurando é

=SUMPRODUCT(1*(A3>$A$3:$A$8),1*(B3=$B$3:$B$8))+1

que precisa ser adicionado à pasta de trabalho um e informará o número da reunião, primeiro: 1, segundo: 2 etc. Uma outra questão com essa fórmula é que ela não fará distinção entre dois números do mesmo valor. . Se uma pessoa visitar você duas vezes em um dia (supondo que você não esteja gravando até as horas), ela será contada apenas como uma.

    
por 02.05.2015 / 11:25
0

Como descrito na outra resposta, você pode fazer isso com a fórmula, mas pode não ser a melhor / mais fácil solução, eu usaria uma das opções abaixo:

Tabela dinâmica:

Provavelmente a solução mais fácil e elegante se você puder viver com suas limitações:
- o intervalo de destino não é editável (talvez seja até positivo no seu caso).
- você pode usar somente números e valores de data no corpo da sua tabela (somente o texto no seu exemplo é taxa, mas você pode definir o formato numérico personalizado para mostrar "mg" após o número).
Preparação:
- adicione uma nova coluna na sua tabela - VisitSequence: =countifs(f:f,f3,b:b,"<="&b3) .
- crie uma tabela dinâmica. Rótulos da coluna: código cabeçalhos de linha: VisitSequence; valores: data, dose, duração, próxima visita (como você tem apenas uma linha para cada combinação de ID X data, você pode usar a soma da média).

VBA:

Requer muito mais trabalho do que pivô, mas é muito mais flexível.

MS Access:

Ferramenta nativa para o relatório de que você precisa. Pode exigir algum aprendizado de você, mas pode ser a melhor solução a longo prazo.

    
por 02.05.2015 / 19:33