[vba]
Dim min As Double
Dim rng As Range
Set rng = Range("A11")
dblMin = ActiveSheet.Evaluate("MIN(IF(" & rng.Address(False, False) & _
"<>0,--(" & rng.Address(False, False) & ")))")
Set rng = Range("A22")
dblMin = ActiveSheet.Evaluate("MIN(IF(" & rng.Address(False, False) & _
"<>0,--(" & rng.Address(False, False) & ")))")
[/vba]