About Me

A minha foto
JRod - PORTUGAL
Microsoft [MVP] - Excel (10º ano consecutivo)
Ver o meu perfil completo
Com tecnologia do Blogger.

Seguidores

Estatisticas

Free Blog Counter

eXTReMe Tracker
2008-10-12

Questão (adaptada):

“ Como faço para o Excel me dar o endereço da célula que possui o maior valor numa determinada coluna?”

 

Tomemos o seguinte exemplo:

image

Se pretendessemos apenas saber qual o maior valor encontrado, então utilizariamos a seguinte fórmula:

=MÁXIMO(A1:A9)

No exemplo, o valor mais elevado é o 7.

Então, o que se pretende, é obter uma fórmula que nos diga qual a célula que contém o valor mais elevado, ou seja, “A3”.

 

A Função CORRESP() procura por um valor num array e devolve a posição relativa desse valor.

Por sua vez, a Função ENDEREÇO() devolve a representação em texto do endereço de uma determinada célula.

 

Assim, a fórmula a utilizar, será a seguinte, combinando as três Funções descritas:

=ENDEREÇO(CORRESP(MÁXIMO(A1:A9);$A$1:A9;0);1)

ou seja, devolve image

 

Pode, igualmente, utilizar-se uma UDF, como, por exemplo, esta apresentada num newsgroup por Ron Rosenfeld:


A sintaxe é a seguinte: =MaxAdr(rng), em que rng é o Range que se pretende utilizar:

 

Function MaxAdr(rng As Range)
    Dim c As Range
    Dim MaxNum As Double

    MaxNum = Application.WorksheetFunction.Max(rng)

    For Each c In rng
        If c.Value = MaxNum Then
            MaxAdr0 = c.Address
            Exit Function
        End If
    Next c
End Function

 

Tópicos relacionados: