Это НЕ работает:
Sub X()
Dim A As Access.Application
Set A = CreateObject("Access.Application")
'Do Stuff
End Sub
Однако, это РАБОТАЕТ:
Sub X()
Dim A As Object
Set A = CreateObject("Access.Application")
'Do Stuff
End Sub
Я знаю, что они делают практически то же самое, но кто-нибудь может сказать мне, как создать объект access.application? Я должен добавить, что у меня есть Crystal Reports 11, и при моем последнем обновлении он может иметь «незарегистрированные» некоторые библиотеки VBA.
(обновление 2009-06-29)
В ответ на первые два вопроса я использую MS Access VBA для управления некоторыми другими файлами Access и Excel. Так как это будет работать только на моей локальной машине, я могу гарантировать, что Access всегда будет установлен. Я также ссылался на «Библиотеку объектов Microsoft Access 11.0» (MSACC.OLB).
Я знаю, что есть способы обойти это, то есть использовать раннее связывание при кодировании и переключаться на позднее связывание при запуске, я просто не понимаю, почему метод раннего связывания вообще не работает на моей машине (конечно, код отлично работает на другой машине с Access).