O método Evaluate dos objetos Workbook, Worksheet e Chart é uma funcionalidade que pode reduzir drasticamente seu código e o tempo de resposta da sua aplicação.
A principal característica desse método é que ele retorna o resultado de uma fórmula assim como a digitamos diretamente na planilha. Por exemplo, imagine que você queira saber quantas vezes aparece a palavra "São Paulo" em uma determinada no intervalo A1:A200. Você provavelmente digitaria em uma célula uma fórmula como:
=CONT.SE(A1:A200;"São Paulo")
No entanto, se você precisa desse resultado no código, sem o Evaluate você pode escrever:
. Dim I As Integer
. Dim intQuant As Integer
. For I = 1 To 200
. . If Plan1.Cells(I, 1) = "São Paulo" Then
. . . intQuant = intQuant
. . End If
. Next I
Com o Evaluate, você apenas digitaria:
Dim intQuant As Integer
intQuant = Plan1.Evaluate("COUNTIF(A1:A200, ""São Paulo"")")
A fórmula é exatamente a mesma, mas tem que usar a sintaxe em inglês. Se não sabe como é o nome da função em inglês, digite a fórmula na planilha, selecione a célula com a fórmula e digite na janela imediata:
?ActiveCell.Formula
Nenhum comentário:
Postar um comentário