Введите 1 в ячейку, выберите ее, затем введите в окне «Немедленно»:
? typename(application.match(1,selection,0))
выходы "Double"
Вы должны использовать Variant
, чтобы можно было проверить возвращаемое значение на наличие ошибки в случае, если совпадения не найдено:
Dim l As Variant
l = Application.Match(Range("O10"), Range("B9:B500"), 0)
If IsError(l) Then
'no match!
Else
'use l
End If
Не забывайте, что (например) значения l / k, равные 1, будут соответствовать Row9, а не Row1 (потому что ваш диапазон поиска B9: B500)