2015-02-07 2 views
2

У меня есть последующий VBA код, который я использую для подключения к базе данных MDB, но я получаю ошибку 429 при попытке подключиться DAO.OpenDatabase (DBFILE)Ошибка 429 при подключении DAO Access

Я не был получив эту ошибку раньше, но теперь это происходит. На моем другом компьютере это соединение работает нормально.

Я проверил путь MDB, и это правильно.

Ссылки я использую являются:
- Visual Basic для приложений
- Microsoft Excel 15,0 Библиотека объектов
- OLE Automation
- Microsoft Office 15,0 Библиотека объектов
- Microsoft DAO Library 3.6 Объект

Я использую Excel 2013 (на другом компьютере - Excel 2010), но, как я сказал, он работал до 2013 года.

Кто-нибудь знает, как получить этот пр. Облем решил, пожалуйста?

Private Sub IniciaDB() 

Dim rs As Recordset 
Dim fld As Variant 
Dim DbFile as String 

DbFile = "D:\Documentos\PMbox\PPMdatabase2.MDB" 

On Error Resume Next 
Set OpenConn = DAO.OpenDatabase(DbFile) 
If Err.Number = 3024 Then MsgBox "Check connection string in the VBA StaticClass object", vbOKOnly 

Set ObjAccess = CreateObject("Access.Application") 
ObjAccess.Visible = False 
ObjAccess.OpenCurrentDatabase (DbFile) 

'runSQL ("INSERT INTO tabela_teste VALUES ('My name', 34)") 
Set rs = runCursorSQL("SELECT * FROM tabela_teste") 

Do While Not rs.EOF 
    For Each fld In rs.Fields 
     Debug.Print fld.Value & ";"; 
    Next 
    rs.MoveNext 
Loop 

closeResources 

End Sub 
+0

Какая строка выдает эту ошибку? Что такое описание ошибки? – shahkalpesh

+0

Строка: Установить OpenConn = DAO.OpenDatabase (DbFile) – Braulio

+0

Описание ошибки: «ActiveX-компонент не может создать объект» – Braulio

ответ

0

Ну, найденное решение, что ссылка DAO не хватает, то в моем компьютере, но ссылка указывает Program Files и DAO фактически на Program Files (x86)

1

Я изо всех сил с той же проблемой в течение довольно долгого времени.
Оказалось, что мой офис был 64bit, и поэтому ссылка Microsoft DAO 3.6 Объектная библиотека не работает.

Игра вокруг с эталонами, оказалось, что с помощью Microsoft Office 15.0 Access ядро ​​базы данных объекта (ACEDAO.DLL) вместо DAO360 решить эту проблему.

Ссылка на аналогичный ответ, который бы решить мою проблему, если я нашел, что это рано Writing Excel VBA to receive data from Access

1

Я строил MDB к ACCDB конвертер, когда я столкнулся ошибки 429. Вот ссылка на загружаемый решаемом моя проблема.

http://www.microsoft.com/en-ca/download/details.aspx?id=13255

Цитата: «Эта загрузка установить набор компонентов, которые могут быть использованы для облегчения передачи данных между 2010 системы Microsoft Office файлов и не-Microsoft приложений Office.»

0

Я провел ночь над этой проблемой, пока не исправил ее, удалив 64-разрядные версии MS Office и MS Access 2010 Redistributable, а затем повторно установив 32-разрядную версию обоих из них.

Мне определенно кажется, что в 64-битных сборках есть проблемы совместимости с этим использованием DAO.

Я описал всю проблему у меня было in this post.

Смежные вопросы