Preciso de uma ajuda, estou tentando fazer uma planilha e nela vai usar a seguinte logica, existe uma modalidade e nela você fica de primeiro a quarto colocado, e cada posição tem uma pontuação, fiz a seguinte formula; =SE(B5=1;PROCV(A5;Planilha2!1:1048576;2;0);SE(B5=2;PROCV(A5;Planilha2!1:1048576;3;0))), assim se o valor da posição for um, na outra planilha em que esta as pontuações, ele retornará o valor correspondente a posição, mas o excel trava quando eu tento usar mais uma condição, e vou precisar mais, porque um proximo passo é sem ser modalidades mas com mais topicos. Gostaria de saber se alguem consegue me ajudar a usar uma formula mais curta e eficiente, por favor, agradeço a atenção.
Envie sua primeira dúvida gratuitamente aqui no Tira-dúvidas Profes. Nossos professores particulares estão aqui para te ajudar.
A fórmula PROCV
pode ficar um pouco complicada e lenta quando é usada para grandes intervalos. Aqui estão algumas sugestões para criar uma fórmula mais curta e eficiente:
Uso de Tabela: Se possível, transforme sua lista na Planilha2 em uma tabela. Isso simplificará as referências e evitará o uso de intervalos fixos enormes, tornando a fórmula mais rápida e clara.
Para fazer isso:
Depois, você pode substituir Planilha2!1:1048576
por Pontuacao
na fórmula, ou usar a notação TABELA[PONTOS]
para fazer referência à coluna de interesse.
FUNÇÃO INDICE e CORRESP: Para tornar sua fórmula mais eficiente, combine as funções INDICE
e CORRESP
. Essa combinação evita a necessidade de especificar uma grande área para a função PROCV
vasculhar.
INDICE
retorna um valor com base em uma posição específica dentro de um intervalo.CORRESP
retorna a posição de um valor específico dentro de um intervalo.Uma possível reformulação da sua fórmula seria:
Nesta fórmula, substitua Pontuacao[Modalidades]
e Pontuacao[PontosX]
pelos nomes reais das colunas que você nomeou na tabela "Pontuacao".
Uso de Macros ou Funções Personalizadas: Se você precisar de muitas condições complexas, considere criar uma função personalizada com VBA ou usar uma linguagem de programação externa para lidar com a lógica e retornar o resultado no Excel. Essa pode ser uma solução eficiente a longo prazo.
Espero que isso ajude a simplificar sua planilha e a resolver problemas de desempenho. Se precisar de mais dicas, estou por aqui para ajudar!
Envie sua primeira dúvida gratuitamente aqui no Tira-dúvidas Profes. Nossos professores particulares estão aqui para te ajudar.
Oi Felipe!
Tenta essa: =SES(Planilha1!A5=1;Planilha2!D4;Planilha1!A5=2;Planilha2!D5;Planilha1!A5=3;Planilha2!D6;Planilha1!A5=4;Planilha2!D7)
Boa sorte!
No PROCV não use a coluna inteira do Excel até a linha 1048576. Use somente o intervalo que conterá dados. 1000 linhas, por exemplo. Assim, o excel não terá que percorrer o um milhão de linhas.
Envie sua primeira dúvida gratuitamente aqui no Tira-dúvidas Profes. Nossos professores particulares estão aqui para te ajudar.