Thread: just learning
View Single Post
  #8   Report Post  
Posted to microsoft.public.excel.programming
JP Ronse JP Ronse is offline
external usenet poster
 
Posts: 174
Default just learning

Hi Per,

You are right. I retyped the statement and saw that arg2 must be a range .

Thank you for your time. I should better read what the instructions are
saying instead wishful thinking.

Wkr,

JP


"Per Jessen" wrote in message
...
Hi

In the Rank function, Arg2 is required to be a Range variable, whereas the
other functions require a Arg2 as Double.

Regards,

"JP Ronse" skrev i meddelelsen
...
Hi All,

Finding some interesting ways to use functions in VBA, I was trying ...

The last statement gives: Compile error: type mismatch.

Why is Large, Match working on an array and Rank not?

Wkr,

JP

Sub test_JP()
Dim arr(1 To 1000) As Double
Dim i, v As Range

For i = 1 To 10
arr(i) = Int((100 - 1 + 1) * Rnd + 1)
Next

Set v = Sheets("sheet3").Range("B1:B6")
'''
Debug.Print Application.WorksheetFunction.Large(arr, 1)
Debug.Print
Application.WorksheetFunction.Match(Application.Wo rksheetFunction.Large(arr,
1), arr, 0)
Debug.Print Application.WorksheetFunction.Rank(1, v, 0)
Debug.Print Application.WorksheetFunction.Rank(1, arr, 0)

End Sub