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
#5801
Boa tarde,

Tenho uma tabela onde relaciono pessoas por atividades.
Preciso saber quantas vezes duas pessoas (elementos) aparecem praticando as mesmas atividades.

Por exemplo (simplificado):

Imagem

Nesse exempĺo, alguns resultados devem ser:
ADÃO/ADÃO = 3
ADÃO/ANA = 1
...
JOAQUIM/MARCOS = 0

Me parece ser uma coisa bem simples, mas o Cont.se e os ProcV e ProcH não resolveram.
#5809
Boa tarde!

Provavelmente tem uma forma mais fácil de fazer isso, mas não me ocorreu nada kk... mas aparentemente isso deu certo, tenta aí

Inserir essa fórmula na célula B12 (de acordo com seu print), e arrastar para as demais:
Código: Selecionar todos
=SE(OU(CONT.SE($B$2:$F$2;$A12)=0;CONT.SE($B$2:$F$2;B$11)=0);0;1)+SE(OU(CONT.SE($B$3:$F$3;$A12)=0;CONT.SE($B$3:$F$3;B$11)=0);0;1)+SE(OU(CONT.SE($B$4:$F$4;$A12)=0;CONT.SE($B$4:$F$4;B$11)=0);0;1)+SE(OU(CONT.SE($B$5:$F$5;$A12)=0;CONT.SE($B$5:$F$5;B$11)=0);0;1)
#5828
Parkeless,

Te agradeço pela ajuda, mas essa solução não será viável.
A ideia é fazer uma tabela pra verificar "matches".
Dei o exemplo de atividades como matérias de aula. Só que tenho que relacionar mais de 200 atividades ou interesses em comum e esse número pode aumentar.
Cada linha trará como descrição um desses interesses e, lado a lado, cada nome inserido de quem tem esse mesmo interesse.
Como as pessoas podem ter mais de um interesse/atividade, quero poder identificar qtos interesses em comum duas pessoas têm e assim saber quem tem mais em comum com uma pessoa específica qdo aplicar um filtro.

Daí, se eu aplicar essa fórmula vou ter que atualizar cada vz q entrar uma nova pessoa ou um novo interesse e vai ser uma fórmula gigante.

Uma solução que eu pensei foi usar como critério a atividade/interesse, já que é o elemento da primeira coluna, mas não sei qual fórmula ia me dar o resultado que preciso que é simplesmente a soma das vezes que as duas pessoas aparecem na mesma linha.
Parkeless escreveu:Boa tarde!

Provavelmente tem uma forma mais fácil de fazer isso, mas não me ocorreu nada kk... mas aparentemente isso deu certo, tenta aí

Inserir essa fórmula na célula B12 (de acordo com seu print), e arrastar para as demais:
Código: Selecionar todos
=SE(OU(CONT.SE($B$2:$F$2;$A12)=0;CONT.SE($B$2:$F$2;B$11)=0);0;1)+SE(OU(CONT.SE($B$3:$F$3;$A12)=0;CONT.SE($B$3:$F$3;B$11)=0);0;1)+SE(OU(CONT.SE($B$4:$F$4;$A12)=0;CONT.SE($B$4:$F$4;B$11)=0);0;1)+SE(OU(CONT.SE($B$5:$F$5;$A12)=0;CONT.SE($B$5:$F$5;B$11)=0);0;1)
Editado pela última vez por SCCOPO em 16 Dez 2015 às 09:29, em um total de 1 vez.
#5833
Edcronos,
Valeu a atenção!

Eu preciso de algo que conte qtas vezes que dois elementos aparecem na mesma linha dentro de uma tabela. Acho que essa é a maneira mais fácil de explicar oq eu preciso.

Como funciona a tua fórmula?

Edcronos escreveu:eu fiz uma função VBA que conta conjuntos ,
mas apenas com esse exemplo não sei se serve para vc
#5843
Tentei replicar a fórmula do Parkeless para uma tabela 50x50 para verificar outra tabela 100x6...
Tá até agora processando.
Código: Selecionar todos
=SE(OU(CONT.SE($Planilha1.$C6:$H6;$A2)=0;CONT.SE($Planilha1.$C6:$H6;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C7:$H7;$A2)=0;CONT.SE($Planilha1.$C7:$H7;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C8:$H8;$A2)=0;CONT.SE($Planilha1.$C8:$H8;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C9:$H9;$A2)=0;CONT.SE($Planilha1.$C9:$H9;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C10:$H10;$A2)=0;CONT.SE($Planilha1.$C10:$H10;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C11:$H11;$A2)=0;CONT.SE($Planilha1.$C11:$H11;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C12:$H12;$A2)=0;CONT.SE($Planilha1.$C12:$H12;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C13:$H13;$A2)=0;CONT.SE($Planilha1.$C13:$H13;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C14:$H14;$A2)=0;CONT.SE($Planilha1.$C14:$H14;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C15:$H15;$A2)=0;CONT.SE($Planilha1.$C15:$H15;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C16:$H16;$A2)=0;CONT.SE($Planilha1.$C16:$H16;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C17:$H17;$A2)=0;CONT.SE($Planilha1.$C17:$H17;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C18:$H18;$A2)=0;CONT.SE($Planilha1.$C18:$H18;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C19:$H19;$A2)=0;CONT.SE($Planilha1.$C19:$H19;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C20:$H20;$A2)=0;CONT.SE($Planilha1.$C20:$H20;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C21:$H21;$A2)=0;CONT.SE($Planilha1.$C21:$H21;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C22:$H22;$A2)=0;CONT.SE($Planilha1.$C22:$H22;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C23:$H23;$A2)=0;CONT.SE($Planilha1.$C23:$H23;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C24:$H24;$A2)=0;CONT.SE($Planilha1.$C24:$H24;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C25:$H25;$A2)=0;CONT.SE($Planilha1.$C25:$H25;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C26:$H26;$A2)=0;CONT.SE($Planilha1.$C26:$H26;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C27:$H27;$A2)=0;CONT.SE($Planilha1.$C27:$H27;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C28:$H28;$A2)=0;CONT.SE($Planilha1.$C28:$H28;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C29:$H29;$A2)=0;CONT.SE($Planilha1.$C29:$H29;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C30:$H30;$A2)=0;CONT.SE($Planilha1.$C30:$H30;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C31:$H31;$A2)=0;CONT.SE($Planilha1.$C31:$H31;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C32:$H32;$A2)=0;CONT.SE($Planilha1.$C32:$H32;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C33:$H33;$A2)=0;CONT.SE($Planilha1.$C33:$H33;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C34:$H34;$A2)=0;CONT.SE($Planilha1.$C34:$H34;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C35:$H35;$A2)=0;CONT.SE($Planilha1.$C35:$H35;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C36:$H36;$A2)=0;CONT.SE($Planilha1.$C36:$H36;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C37:$H37;$A2)=0;CONT.SE($Planilha1.$C37:$H37;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C38:$H38;$A2)=0;CONT.SE($Planilha1.$C38:$H38;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C39:$H39;$A2)=0;CONT.SE($Planilha1.$C39:$H39;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C40:$H40;$A2)=0;CONT.SE($Planilha1.$C40:$H40;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C41:$H41;$A2)=0;CONT.SE($Planilha1.$C41:$H41;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C42:$H42;$A2)=0;CONT.SE($Planilha1.$C42:$H42;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C43:$H43;$A2)=0;CONT.SE($Planilha1.$C43:$H43;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C44:$H44;$A2)=0;CONT.SE($Planilha1.$C44:$H44;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C45:$H45;$A2)=0;CONT.SE($Planilha1.$C45:$H45;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C46:$H46;$A2)=0;CONT.SE($Planilha1.$C46:$H46;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C47:$H47;$A2)=0;CONT.SE($Planilha1.$C47:$H47;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C48:$H48;$A2)=0;CONT.SE($Planilha1.$C48:$H48;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C49:$H49;$A2)=0;CONT.SE($Planilha1.$C49:$H49;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C50:$H50;$A2)=0;CONT.SE($Planilha1.$C50:$H50;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C51:$H51;$A2)=0;CONT.SE($Planilha1.$C51:$H51;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C52:$H52;$A2)=0;CONT.SE($Planilha1.$C52:$H52;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C53:$H53;$A2)=0;CONT.SE($Planilha1.$C53:$H53;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C54:$H54;$A2)=0;CONT.SE($Planilha1.$C54:$H54;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C55:$H55;$A2)=0;CONT.SE($Planilha1.$C55:$H55;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C56:$H56;$A2)=0;CONT.SE($Planilha1.$C56:$H56;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C57:$H57;$A2)=0;CONT.SE($Planilha1.$C57:$H57;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C58:$H58;$A2)=0;CONT.SE($Planilha1.$C58:$H58;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C59:$H59;$A2)=0;CONT.SE($Planilha1.$C59:$H59;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C60:$H60;$A2)=0;CONT.SE($Planilha1.$C60:$H60;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C61:$H61;$A2)=0;CONT.SE($Planilha1.$C61:$H61;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C62:$H62;$A2)=0;CONT.SE($Planilha1.$C62:$H62;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C63:$H63;$A2)=0;CONT.SE($Planilha1.$C63:$H63;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C64:$H64;$A2)=0;CONT.SE($Planilha1.$C64:$H64;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C65:$H65;$A2)=0;CONT.SE($Planilha1.$C65:$H65;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C66:$H66;$A2)=0;CONT.SE($Planilha1.$C66:$H66;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C67:$H67;$A2)=0;CONT.SE($Planilha1.$C67:$H67;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C68:$H68;$A2)=0;CONT.SE($Planilha1.$C68:$H68;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C69:$H69;$A2)=0;CONT.SE($Planilha1.$C69:$H69;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C70:$H70;$A2)=0;CONT.SE($Planilha1.$C70:$H70;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C71:$H71;$A2)=0;CONT.SE($Planilha1.$C71:$H71;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C72:$H72;$A2)=0;CONT.SE($Planilha1.$C72:$H72;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C73:$H73;$A2)=0;CONT.SE($Planilha1.$C73:$H73;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C74:$H74;$A2)=0;CONT.SE($Planilha1.$C74:$H74;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C75:$H75;$A2)=0;CONT.SE($Planilha1.$C75:$H75;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C76:$H76;$A2)=0;CONT.SE($Planilha1.$C76:$H76;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C77:$H77;$A2)=0;CONT.SE($Planilha1.$C77:$H77;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C78:$H78;$A2)=0;CONT.SE($Planilha1.$C78:$H78;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C79:$H79;$A2)=0;CONT.SE($Planilha1.$C79:$H79;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C80:$H80;$A2)=0;CONT.SE($Planilha1.$C80:$H80;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C81:$H81;$A2)=0;CONT.SE($Planilha1.$C81:$H81;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C82:$H82;$A2)=0;CONT.SE($Planilha1.$C82:$H82;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C83:$H83;$A2)=0;CONT.SE($Planilha1.$C83:$H83;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C84:$H84;$A2)=0;CONT.SE($Planilha1.$C84:$H84;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C85:$H85;$A2)=0;CONT.SE($Planilha1.$C85:$H85;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C86:$H86;$A2)=0;CONT.SE($Planilha1.$C86:$H86;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C87:$H87;$A2)=0;CONT.SE($Planilha1.$C87:$H87;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C88:$H88;$A2)=0;CONT.SE($Planilha1.$C88:$H88;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C89:$H89;$A2)=0;CONT.SE($Planilha1.$C89:$H89;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C90:$H90;$A2)=0;CONT.SE($Planilha1.$C90:$H90;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C91:$H91;$A2)=0;CONT.SE($Planilha1.$C91:$H91;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C92:$H92;$A2)=0;CONT.SE($Planilha1.$C92:$H92;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C93:$H93;$A2)=0;CONT.SE($Planilha1.$C93:$H93;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C94:$H94;$A2)=0;CONT.SE($Planilha1.$C94:$H94;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C95:$H95;$A2)=0;CONT.SE($Planilha1.$C95:$H95;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C96:$H96;$A2)=0;CONT.SE($Planilha1.$C96:$H96;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C97:$H97;$A2)=0;CONT.SE($Planilha1.$C97:$H97;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C98:$H98;$A2)=0;CONT.SE($Planilha1.$C98:$H98;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C99:$H99;$A2)=0;CONT.SE($Planilha1.$C99:$H99;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C100:$H100;$A2)=0;CONT.SE($Planilha1.$C100:$H100;B$1)=0);0;1)+SE(OU(CONT.SE($Planilha1.$C101:$H101;$A2)=0;CONT.SE($Planilha1.$C101:$H101;B$1)=0);0;1)
#5849
Sccopo,

Tenta isso:

Abre seu Excel, aperta Alt + F11, Inserir > Módulo, e cola o seguinte código:
Código: Selecionar todos
Function Parkeless(Valor1 As String, Valor2 As String, intervalo As Range)

Dim linha As Long
Dim Temvalor1 As Boolean, Temvalor2 As Boolean
Dim coluna As Long

'Executar em todas as linhas
For linha = 1 To intervalo.Rows.Count
    For coluna = 1 To intervalo.Columns.Count
        If intervalo.Cells(linha, coluna) = Valor1 Then: Temvalor1 = True
        If intervalo.Cells(linha, coluna) = Valor2 Then: Temvalor2 = True
    Next coluna
    If Temvalor1 And Temvalor2 Then: Parkeless = Parkeless + 1
    'zerar valores
    Temvalor1 = False: Temvalor2 = False
      


Next linha


End Function
Depois feche e, de volta no Excel, digite na célula B12: "=Parkeless(Valor_1;Valor_2;Matriz)"

Usando os dados do seu print, ficaria assim:
Código: Selecionar todos
=Parkeless($A12;B$11;$B$2:$F$5)
E aí você arrasta para o restante.

Anexo exemplo da aplicação.
Você não está autorizado a ver ou baixar esse anexo.
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