Ir ao conteúdo
  • Cadastre-se

Tradução de fórmula excel Inglês Português


Ir à solução Resolvido por Visitante,

Posts recomendados

Tenho as colunas P Q R e S que contém somatórios de uma coisa qualquer, números inteiros maior ou igual a 0.

Quero uma fórmula que:

Me informe a posição do valor mínimo entre as 4 possíveis, isso é simples com MIN e CORRESP, mas tem um complicador:

Quando houver dois ou mais valores mínimos iguais, quero que ele me de um aleatório entre as posições com estes mínimos:

 

Exemplo:

 

10, 20, 5, 40 -> retorna 3 (posição do valor mínimo).

30,15, 8, 8 -> retorna aleatoriamente 3 ou 4 (posição dos mínimos empatados 8)

5, 10, 5, 10 -> retorna aleatoriamente 1 ou 2 (posição dos mínimos empatados 5) 

 

Será que tem como ? preferencialmente sem macro.

 

Grato

 

Link para o comentário
Compartilhar em outros sites

Pessoal, estou com um problema chato aqui, não estou conseguindo reproduzir o resultado de uma fórmula que funciona para o pessoal no exterior.

=LARGE(INDEX((C4:F4=MIN(C4:F4))*{1,2,3,4},),RANDBETWEEN(1,COUNTIF(C4:F4,MIN(C4:F4))))

Minha tradução:

=MAIOR(ÍNDICE((C4:F4=MÍNIMO(C4:F4))*{1;2;3;4};ALEATÓRIOENTRE(1;CONT.SE(C4:F4;MÍNIMO(C4:F4))))

Tenho impressão que há alguma falha na tradução da pontuação especialmente nesta parte mais diferente *{1;2;3;4}, os nomes das fórmulas acho que estão certos.

 
Esta fórmula tem que retornar a posição (coluna relativa) do menor valor entre os quatro valores das colunas C a F, se houver empate (mais de uma coluna com um mesmo valor mínimo) ela retorna uma posição aleatória entre estas posições com o mesmo valor mínimo. Exemplos:
 
8,6,5,2 retorna 4
10,5,20,30 retorna 2
8,8,20,30 retorna 1 ou 2 (aleatório entre 1, 2)
4,3,3,3 retorna 2,3 ou 4 (aleatório entre 2,3 ou 4)
 
Grato
Link para o comentário
Compartilhar em outros sites

  • Solução

=MAIOR(ÍNDICE((C4:F4=MÍNIMO(C4:F4))*{1\2\3\4};ALEATÓRIOENTRE(1;CONT.SE(C4:F4;MÍNIMO(C4:F4))))

dica: para traduzir fórmulas da versão em inglês para a versão em português

1. selecione a célula onde deseja colocar a fórmula traduzida

2. abra o editor de VBA

3. no menu Exibir / Janela 'Verificação imediata' (ou Ctrl+G)

4. nessa nova janela digite Activecell.Formula = "= a fórmula em inglês entre aspas duplas" + Enter

          ex. ActiveCell.Formula= "=SUM(A1:A10)" + Enter

          no seu caso:

                              ActiveCell.Formula="=LARGE(INDEX((C4:F4=MIN(C4:F4))*                           {1,2,3,4},),RANDBETWEEN(1,COUNTIF(C4:F4,MIN(C4:F4))))" + Enter

PS - eu tentei sem sucesso chegar a uma fórmula para obter esse resultado no seu outro tópico

http://forum.clubedohardware.com.br/forums/topic/1083674-menor-valor-entre-4-valores-mas-se-houver-empate/

o cara que te sugeriu essa aí de cima é fera; sugiro que você coloque essa fórmula lá no seu outro tópico pois poderá servir para outras pessoas no futuro.

Link para o comentário
Compartilhar em outros sites

Obrigado OSvaldo!

Show esse esquema! Passei o dia quebrando a cabeça com isso.

Ja mais ia imagina a tradução:

=MAIOR(ÍNDICE((C4:F4=MÍNIMO(C4:F4))*{1\2\3\4};ALEATÓRIOENTRE(1;CONT.SE(C4:F4;MÍNIMO(C4:F4))))

Em inglês {1,2,3,4} quem foi o infeliz que trocou isso para contrabarra em pt-br que loucura. Ja nao bastava terem trocado as , por ; 

 

Valeu mesmo. A fórmula funciona direitinho.

 

Patropi, não foi minha intenção, até porque o objetivo aqui era só a tradução da fórmula.

 

Obrigado a todos.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...