Excel: usando instruções IF aninhadas contendo caracteres curinga

1

Atualmente, estou trabalhando em um projeto no qual tenho uma lista de visitas de pacientes a uma clínica. Cada paciente recebe um Provedor de Cuidados Primários, mas nem sempre esse é o fornecedor de processamento em uma determinada visita. Minha tarefa é ver quantas visitas a clínica tinha onde o paciente realmente viu seu PCP. Na verdade, resolvi esse problema neste site há alguns dias e consegui usar uma instrução IF no Excel para determinar tudo isso.

(Nota: com a maneira como os dados são extraídos do banco de dados, o campo PCP contém o nome completo e as credenciais do provedor, enquanto o campo Renderização contém apenas o sobrenome)

=IF(COUNTIF([@PCP],"*"&[@Rendering]&"*")>0,"YES","")

Funciona perfeitamente. A questão é que eu aprendi uma nova reviravolta: desde que os provedores da clínica trabalhem em equipe, diz-se que um paciente viu o seu PCP se ele tiver visitado alguém da equipe do PCP. Portanto, não posso mais comparar apenas os campos PCP e Rendering na minha lista do Excel.

Eu sei o que precisa ser feito, mas não sei como fazê-lo. Todas as tentativas até agora resultaram em erros de sintaxe não específicos do Excel.

Vou tentar configurar um pouco melhor para todos. Digamos que existam duas equipes de três provedores.

Smith, John MD         Brown, Bob MD
Jones, Mike MD         Green, Ann MD
Doe, Jane MD           White, Mary MD

Minha tabela mostra os nomes de Rendering e PCP lado a lado, e eu queria adicionar outra coluna contendo a instrução IF que executa a verificação (provavelmente algo que diz apenas "YES" para resultados positivos e deixa todo o restante em branco). Deve ser algo como isto:

Rendering              PCP                     Seen PCP/team?
---------------------------------------------------------------
Smith                  Smith, John MD          YES
Smith                  Jones, Mike MD          YES
Brown                  Smith, John MD
Green                  Brown, Bob MD           YES
Doe                    White, Mary MD
Doe                    Jones, Mike MD          YES

Portanto, o resultado só deve ser negativo se os nomes de Renderização e PCP forem de equipes diferentes. E como agora estou verificando uma lista de nomes (ou cadeias de texto) em vez de apenas fazer uma comparação simples entre células, não posso usar meus parâmetros @PCP e @Rendering mais (a menos que eu esteja totalmente perdendo alguma coisa). Estou imaginando uma série de declarações IF aninhadas e passei algum tempo apenas esboçando a estrutura básica do que ela precisa para se parecer.

=IF(@PCP = Smith AND @Rendering = Smith, "YES", IF(@PCP = Smith AND @Rendering = Jones, "YES", IF(@PCP = Smith AND @Rendering = Doe, "YES", IF(@PCP = Jones AND @Rendering = Jones, "YES", IF(@PCP = Jones AND @Rendering = Smith, "YES", IF(@PCP = Jones AND @Rendering = Doe, "YES", IF(@PCP = Doe AND @Rendering = Doe, "YES", IF(@PCP = Doe AND @Rendering = Smith, "YES", IF(@PCP = Doe AND @Rendering = Jones, "YES", "")))))))))

Obviamente, essa sintaxe não está correta, e essa é apenas uma das duas equipes (na verdade estou lidando com quatro equipes na vida real), mas estou no caminho certo? Eu tentei fazer apenas uma versão condensada com apenas dois provedores apenas como um experimento e o Excel apenas me deu a mensagem "Parece que você está tentando escrever uma fórmula ..." e não me disse o que estava realmente errado. Eu sei que precisarei fazer uso de caracteres curinga, a menos que eu queira digitar os nomes completos dos provedores para o campo PCP ...

Alguém tem alguma sugestão sobre como fazer isso funcionar?

    
por EJF 20.02.2017 / 23:15

2 respostas

1

Se você tiver a lista de visitas em Sheet1 e a lista de equipes estiver em Sheet2 . Eu faria (em Sheet1 C2 ):

=IF(AND(COUNTIF(Sheet2!$A$1:$A$3,"*"&A2&"*")>0,COUNTIF(Sheet2!$A$1:$A$3,B2)>0),"YES",IF(AND(COUNTIF(Sheet2!$B$1:$B$3,"*"&A2&"*")>0,COUNTIF(Sheet2!$B$1:$B$3,B2)>0),"YES",""))

Aqui está um exemplo do arquivo: link

    
por 21.02.2017 / 00:21
0

Você precisa criar um nome de equipe, por exemplo, Equipe A (Smith, John MD e Jones, Mike MD e Doe, Jane MD) Equipe B (Brown, Bob MD e Green, Ann MD e White, Mary MD). adicione todas as suas equipes em 2 colunas uma para o PCP o segundo nome da equipe (A, B, C e D) Use Vlookup para encontrar o nome da equipe para cada renderização e PCP e compare com If, quando você tiver a mesma equipe escreva YES else "" vazio.

=IF(VLOOKUP("*"&A2&"*",$F$2:$G$7,2,FALSE)=VLOOKUP(B2,$F$2:$G$7,2,FALSE),"YES","")

=if(vlookup("*"&@Rendering&"*",PCP:Team,2,False)=vlookup(@PCP,PCP:Team,2,False),"YES","")

Seus dados estão em A1: B7 como sua segunda tabela (Rendering, PCP, Seen ...)
F2: G7 é o array das 2 colunas (PCP: Team)
2 em Vlookup para ler a segunda coluna Nome da equipe
Falso para ter o resultado exato

    
por 21.02.2017 / 00:01