Isso pode ser feito com uma fórmula, mas é bastante longo, e o VBA é provavelmente uma solução melhor. Além disso, isso não tratará do possível caso em que você tem três valores > 7. Mas eu vou te mostrar o método da fórmula de qualquer maneira.
Vamos começar com o caso mais simples em que há apenas uma célula > 7:
AfórmulaemF1é:
=IF(COUNTIF($A$1:D$1,">7")>1,"Double",IF($A1>7,"U",IF($B1>7,"X",IF($C1>7,"Y",IF($D1>7,"Z","")))))
A parte COUNTIF () conta o número de células no intervalo A1: D1 que são maiores que 7. Se esse total for maior que 1, o IF () retorna "Double", que é apenas um espaço reservado para o maior fórmula que vem depois. Se o total não for maior que 1, a fórmula usa sua instrução IF () aninhada para exibir o código da célula que é > 7.
Para o caso em que duas células são > 7, um IF aninhado () não funcionará. Precisamos saber quais colunas são > 7. Se tivermos esses dados,
Primeiro,criamosumamatrizquelistaascolunas>7.Estaexpressão(A1:D1>7)*COLUMN(A1:D1)
fazisso.Aprimeiraparte(A1:D1>7)
perguntaquaiscélulassão>7eavaliaparaamatriz{VERDADEIRO,FALSO,VERDADEIRO,FALSO}.AsegundaparteéosnúmerosdacolunadeA1:D1ou{1,2,3,4}.MultiplicaressasduasmatrizesfazcomqueosvaloreslógicosVERDADEIROeFALSOsejamconvertidospara1e0,portanto,oresultadoéamatriz{1,0,3,0},quesãoosnúmerosdascolunasquetêmumvalor>7.
AgorapodemosusaressesnúmerosparapesquisaroscódigosdacolunausandoINDEX():
INDEX({"U","X","Y","Z"},LARGE((A1:D1>7)*COLUMN(A1:D1),2))
Aqui LARGE () retorna o segundo maior valor na matriz de números de colunas > 7 (que é 1), e INDEX () usa isso para retornar o primeiro elemento na matriz de letras - U.
Da mesma forma, essa expressão obtém os códigos correspondentes ao segundo e ao primeiro maior número de colunas separados por uma vírgula:
INDEX({"U","X","Y","Z"},LARGE((A1:D1>7)*COLUMN(A1:D1),2))&","&INDEX({"U","X","Y","Z"},LARGE((A1:D1>7)*COLUMN(A1:D1),1)
Agora, substituímos tudo isso na primeira equação acima, substituindo "Double". Esta fórmula em F1 é uma fórmula de matriz e deve ser digitada com Ctrl Deslocar Enter
=IF(COUNTIF($A$1:D$1,">7")>1,INDEX({"U","X","Y","Z"},LARGE((A1:D1>7)*COLUMN(A1:D1),2))&","&INDEX({"U","X","Y","Z"},LARGE((A1:D1>7)*COLUMN(A1:D1),1)),IF($A1>7,"U",IF($B1>7,"X",IF($C1>7,"Y",IF($D1>7,"Z","")))))
Eu lhe disse que esta fórmula seria "bastante longa". Espero que isso ajude.