Параметр ByRef <имяПараметра> нельзя использовать в лямбда-выражении
Обновлен: Ноябрь 2007
'ByRef' parameter '<parametername>' cannot be used in a lambda expression
Лямбда-выражение объявлено внутри Sub или функция не может использовать какие либо параметры ByRef данного Sub или функции. Например, следующий код вызовет эту ошибку, поскольку параметр ByRefn используется в лямбда-выражении.
'' Not valid.
'Sub ExampleSub(ByRef n As Integer)
' Dim lambda = Function(p As Integer) p + n
'End Sub
Идентификатор ошибки: BC36639
Исправление данной ошибки
Присвойте параметр ByRef локальной переменной и используйте локальную переменную в лямбда-выражении, как показано в следующем коде.
Sub ExampleSub(ByRef n As Integer) Dim temp = n Dim lambda = Function(p As Integer) p + temp End Sub