Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MS Access > Не работает главная кнопочная форма


Автор: Depeche_14 12.7.2005, 23:44
В базе данных создаю встроенными средствами Access главную кнопочную форму, затем запускаю ее, а она не хочет запускаться и выдается такое сообщение:
"Run-time error '-2147024770 (8007007e)' Method 'Connection' of object '_CurrentProject' filed"
Далее, нажимаю кнопку Debug и в окне кода VB желтым цветом выделена следующая строка: Set con = Application.CurrentProject.Connection
Причем такая фигня в любой базе данных, которую я запускаю и в которой создаю главную кнопочную форму... Может, у меня какая-нибудь библиотека не подключена?
Помогите, пожалуйста...)))

Автор: Akina 13.7.2005, 08:04
А в референсах у тебя ADODB значится?

Автор: Depeche_14 13.7.2005, 12:40
В референсах с похожей аббревиатурой есть Microsoft ADO Ext. 2.5 for DDL and Security (вот это как раз подключено), а больше с аббревиатурой ADODB я там ничего не нашел...

Автор: Papirus 13.7.2005, 17:12
Цитата(Depeche_14 @ 13.7.2005, 12:40)
аббревиатурой ADODB я там ничего не нашел...

И не найдешь, потому что там это значиться как Microsoft ActiveX Data Object 2.1 (2.8 - последняя версия.

Тем не менее может дело не в библиотеке? Соединение с сервером есть? Если в меню Файл выбрать "Подключение" - там все в порядке?
Добавлено @ 17:15
Цитата(Depeche_14 @ 12.7.2005, 23:44)
и в окне кода VB желтым цветом выделена следующая строка: Set con = Application.CurrentProject.Connection

Вот это скорее всего и говорит, что нет соединения. Хотя причиной м.б. как раз отсуствие библиотеки на компе (хотя это и странно). Уж 2.1 как правило есть.

Автор: Depeche_14 13.7.2005, 17:32
Цитата(Papirus @ 13.7.2005, 17:12)
Тем не менее может дело не в библиотеке? Соединение с сервером есть? Если в меню Файл выбрать "Подключение" - там все в порядке?

Какое еще соединение? С каким сервером? и что-=то в меню Файл никакого Подключения не нахожу... Может, попробовать офис переставить?

Автор: Papirus 14.7.2005, 10:50
Цитата(Depeche_14 @ 13.7.2005, 17:32)
в меню Файл никакого Подключения не нахожу
А база какая - *.mdb (данные в аксе) или проект *.adp (данные в SQL server)?
Цитата(Depeche_14 @ 12.7.2005, 23:44)
CurrentProject.Connection
Это как правило используют в случае проекта (*.adp). Отсюда и вопросы о подключении к серваку. Если в меню файл нет команды "Подключение" - значит БД Аксессная (*.mdb). Тогда нафига используется такая конструкция...

Короче, чтоб не телепятить надо знать как объявляется переменная "con" Dim con As ... что?

Автор: Depeche_14 14.7.2005, 13:31
Ну во-первых: база *.mdb; во-вторых, главная кнопочная форма создавалась с помощью самого акцеса (сервис -> служебные программы -> диспетчер кнопочных форм); в-третьих: переменная con объявлена как Object

Автор: Гость_Елена 1.12.2005, 11:52
Сама недавно страдала от такой ерунды.
Нужно:
Сделать изменения в:

Private Sub FillOptions()
' Fill in the options for this switchboard page.

'Dim con As Object – убрать
'Dim rs As Object – убрать

Заменить на:

Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset

'Set con = Application.CurrentProject.Connection - убрать

'Set rs = CreateObject("ADODB.Recordset") - убрать

'rs.Open stSql, con, 1 ' 1 = adOpenKeyset – убрать

Заменить на:

rs.Open stSql, CurrentProject.Connection, adOpenKeyset

Теже изменения сделать и в Private Function HandleButtonClick(intBtn As Integer)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)