LEADERSOFT.ru Разработка на заказ программ и сайтов
Форумы по информационным технологиям
 
Регистрация  |  Вход
left
Форумы Минимизировать
ПоискСписок форумов
  Программирование  Microsoft Access. Файлы mdb и accdb  Тема: не работа...
 RE: не работает функция
 
 15.06.2007 21:09:44
All
4316 сообщения
1-ый


RE: не работает функция
объясните пожалуйста в чем моя ошибка
я делаю так:

Dim rs As Object
Dim lng As Long

Forms![MyBigForm].Form![MyForm].SetFocus
'MyForm - подчененная форма
'при этом FormName - возвращает мне "MyBigForm" даже при явном указании фокуса
Set db = CurrentDb
Set rs = Me.Recordset
'DoCmd.GoToRecord , , acLast - не позволяет пройти по шагам, по этому я беру

rs.MoveLast
в ответ получаю - "Object variable or With block variable not set"
lng = rs.RecordCount


P.S. Связанные таблицы Access
Автор: Anonymous от 0:00:00 Источник ...
 15.06.2007 21:09:44
All
4316 сообщения
1-ый


RE: не работает функция
1. Фокус устанавливается в 2 этапа: сначала главная форма, а потом подчиненная форма (объект формы).
2. С таблицей надо связать форму (Object variable or With block variable not set).
3. Подсчет записей
Private Sub Form_Load()
Dim rst As DAO.Recordset
Set rst = Me.RecordsetClone
rst.MoveFirst
rst.MoveFirst
Debug.Print Nz(rst.RecordCount, 0)
End Sub

P.S. В принципе на конференции уже были аналогичные примеры.


P.S. Связанные таблицы Access
Автор: Admin от 0:00:00 Источник ...
 15.06.2007 21:09:44
All
4316 сообщения
1-ый


RE: не работает функция
Уважаемый Admin, мне очень жаль что я отнимаю у Вас столько времени, но сам я тут уже слишком долго топчусь.
как бы я не устанавливал фокус, имя активной формы я всегда получаю "MyBigForm", я поступил иначе - перенес процедуру в "MyForm", если процесс запустить из нее все работает без проблем и по Вашему листингу и по моему.
но опять же есть ??, мне нужно что бы процесс запускался из основной формы, как вызвать процедуру находящуюся в подчиненной форме?
я попробовал такой вариант
Form_ИмяФомы.ИмяСобытия
не сработало, а как иначе не знаю.
помогите добрым словом!?


P.S. Связанные таблицы Access
Автор: 2244 от 0:00:00 Источник ...
 15.06.2007 21:09:44
All
4316 сообщения
1-ый


RE: не работает функция
Процедура должна быть объявлена как глобальная: Public


P.S. Связанные таблицы Access
Автор: Admin от 0:00:00 Источник ...
 15.06.2007 21:09:44
All
4316 сообщения
1-ый


RE: не работает функция
суйчас процедура вызова выглядит так:
MyBigForm - основная форма
MyForm - подчиненная форма

вызов из вспомогательной формы
процедура в основной форме:
Public Function MYF()
DoCmd.GoToRecord , , acNext
End Function
процедура в подчиненной форме:
Private Sub Кнопка18_Click()
Call Forms.MyBigForm.MYF
End Sub
в таком варианте все работает без проблем!

а вот при вызове из основной формы, спотыкаемся на строке Call
ошибка "Object daesn't support properties or methods.
я так понимаю что нужно как-то не так описать имя(путь) подченной формы,
но как я ни пробовал, все едино, меняется только код ошибки.

процедура в основной форме:
Private Sub Кнопка52_Click()
Call Forms.MyBigForm.MyForm.Reccrut
End Sub
процедура в подчиненной форме:
Public Function Reccrut()
Dim rs As Recordset
DoCmd.GoToRecord , , acLast
Set rs = RecordCount
End Function


P.S. Связанные таблицы Access
Автор: Anonymous от 0:00:00 Источник ...
  Программирование  Microsoft Access. Файлы mdb и accdb  Тема: не работа...
ПоискПоиск  Список форумовСписок форумов  
right