ник: час
Me.Controls("lh" & j & i).OnLostFocus = "=funCalc(j,i)"
Me.Controls("lh" & j & i).OnLostFocus =funCalc(j,i)
Кстати называйте как хотите функция или прцедура и та и другая может вернуть результат вычисления. Давайте назовём её функция, тогда в функцию передаём через запятую - все необходимые данные(параметры)
Имя обновляемого поля можно передать двумя способами
В функцию вот так:
Public Function Моя_Функция (Имя_поля, Имя_формы, Чё_Делать)
где Имя_поля - Имя обновляемого поля
end Function
или короче
Public Function Моя_Функция (Имя_поля,)
где Имя_поля - Имя обновляемого поля
Msgbox "Так вот ты какое поле " & Имя_поля
end Function
А в процедуру
Public Имя_Передаваемого_поля AS string
Имя_Передаваемого_поля = Имя_поля
Public sub Чё_делать ()
получили переменную
Имя_Передаваемого_поля
end sub
есть ещё способ:
КокоеПоле=Screen.activeControl
КакаяФорма=Screen.activeForm
(Возможно я написал с синтаксической ошибкой)