Пожалуйста, помогите.
= Не работает:
Function f()
f = 1
End Function
Private Sub Button1_Click()
k = Eval("f()")
End Sub
= Не работает:
Private Sub Button1_Click()
с=1
k = Eval("с")
End Sub
= Работает:
Function f()
f = 1
End Function
Private Sub Button1_Click()
k = f()
End Sub
= В справке: в следующем примере предполагается, что у вас есть серия из 50 функций, определенных как A1, A2 и т. Д.В этом примере функция Eval используется для вызова каждой функции в серии.
Sub CallSeries()
Dim intI As Integer
For intI = 1 To 50
Eval("A" & intI & "()")
Next intI
End Sub
Как заставить работать вариант 1?
Заранее спасибо.
++++++++++++++++++++++++++++
= ОБНОВЛЕНИЕ: Количество ошибок, которые я получаю в разделах «Не работает», равно 2425 ».Не могу найти название функции. "(или «Не удается найти имя выражения.» во втором случае).Извините за мой английский.
= ОБНОВЛЕНИЕ: Когда я пытаюсь явно назвать функцию в Eval:
k = Eval("[Forms]![Form1].f()")
Я получаю ошибку 31005 - "Доступ не может вычислить выражение, потому что есть ссылка на«е»».Я начинаю подозревать, что Access запрещает использование пользовательских функций и переменных в Eval.Хотя помощь утверждает обратное.
= ОБНОВЛЕНИЕ: Работайте:
Function f()
f = 1
End Function
Private Sub Button1_Click()
k = Eval("val(""551" & "9" & "6"")")
End Sub
Очень странные правила двойных кавычек, как по мне.Но это не решает мою проблему.