24.08.2020 Views

Programando o Excel ® Vba Para Leigos - 2ª Ed 2013 NoDRM (1)

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

136 Parte III: Conceitos de Programação

LEMBRE-SE

O VBA disponibiliza as funções de planilha do Excel através do objeto

WorksheetFunction, o qual está contido no objeto Application. Portanto,

qualquer declaração que use uma função de planilha deve usar o

qualificador Application.WorksheetFunction. Em outras palavras, você

deve preceder o nome da função com Application.WorksheetFunction,

(com um ponto separando os dois). A seguir está um exemplo:

Total = Application.WorksheetFunction.Sum(Range(“A1:A12”))

DICA

Você pode omitir a parte Application da parte WorksheetFunction da

expressão. De qualquer modo, o VBA saberá o que você está fazendo.

Em outras palavras, as três expressões a seguir funcionam exatamente

da mesma maneira:

Total = Application.WorksheetFunction.Sum(Range(“A1:A12”))

Total = WorksheetFunction.Sum(Range(“A1:A12”))

Total = Application.Sum(Range(“A1:A12”))

A minha preferência pessoal é usar a parte WorksheetFunction apenas

para deixar bem claro que o código está usando uma função Excel.

Exemplos de função e planilha

Nesta seção, demonstro como usar funções de planilha em suas

expressões VBA.

Encontrando o valor máximo em uma faixa

Eis um exemplo que mostra como usar a função de planilha MÁXIMO

do Excel em um procedimento VBA. Esse procedimento exibe o valor

máximo encontrado na coluna A da planilha ativa:

Asub ShowMax()

Dim TheMax As Double

TheMax = WorksheetFunction.Max(Range(“A:A”))

MsgBox TheMax

End Sub

Você também pode usar a função MÍNIMO para obter o menor valor em

uma faixa. E, como seria esperado, pode usar outras funções de planilha

de maneira semelhante. Por exemplo, você pode usar a função

MAIOR para determinar o “n-ésimo” maior valor em uma faixa. A

seguinte expressão demonstra isto:

SecondHighest = WorksheetFunction.Large(Range(“A:A”),2)

Observe que a função LARGE usa dois argumentos; o segundo argumento

representa o n-ésimo no caso, 2 (o segundo maior valor).

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!