-Поиск по дневнику

Поиск сообщений в rss_sql_ru_access_programming

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 16.03.2006
Записей:
Комментариев:
Написано: 4


При вызове через Eval функция из модуля формы выполняется дважды?

Воскресенье, 05 Октября 2014 г. 23:13 + в цитатник
Здравствуйте!

Разбираюсь с функцией Eval.
Вызываю абсолютно одинаковые функции, находящиеся а) в модуле формы, б) в стандартном модуле.
Результат разный.
При вызове той, которая в модуле формы, результат удваивается.
Простая "учебная" форма с двумя кнопками вызова функций и двумя полями для вывода результатов.
Вот код модуля формы
+
Option Compare Database
Option Explicit
Dim k1 As Integer, _
    m1 As Integer, _
    m2 As Integer

Private Sub Form_Open(Cancel As Integer)
 k2 = 0
End Sub

Private Sub Butt_Eval1_Click()
 m1 = m1 + 1
 FF1 = Nz(FF1) & vbCrLf & m1 & ".   " & Eval("Forms!" & Name & ".Start1")
End Sub

Private Sub Butt_Eval2_Click()
 m2 = m2 + 1
 FF2 = Nz(FF2) & vbCrLf & m2 & ".   " & Eval("Start2()")
End Sub

Function Start1() As Integer
 k1 = k1 + 1
 Start1 = k1
End Function
Вот код стандартного модуля
+
Option Compare Database
Option Explicit
Public k2 As Integer

Function Start2() As Integer
 k2 = k2 + 1
 Start2 = k2
End Function
А вот результат
+
Картинка с другого сайта.
Где-то у меня ошибка. Но найти не могу.
Помогите, пожалуйста.

http://www.sql.ru/forum/1119359/pri-vyzove-cherez-eval-funkciya-iz-modulya-formy-vypolnyaetsya-dvazhdy


 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку