Saltar al contenido

Error 429 - Activex no puede crear el objeto


Recommended Posts

publicado

Muy buen día, tarde, noche.

Quisiera solicitar de su amable colaboración en un pequeño inconveniente que estoy teniendo. Estoy siguiendo un tutorial para un sistema de facturación, pero me he quedado atorado en un proceso, el cual es el siguiente:

Según el instructor, para continuar con el tutorial se debe descargar un archivo que él dejo en un ejecutable, y que supuestamente me guarda una Dll entre mis archivos, la Dll se llama DllAdo.dll, la cual permitirá realizar una conexión entre Excel y Access, y que todo quedará según él más rápido. La cuestión es que nos indica que se debe crear un módulo de conexión con la siguiente función:

'''''''''''DLL ADO ''''''''''
Public Cadena As New ClsAdo
'----------------------------

'------------------------------------------------
'Cadena de Conexión de Excel a Access
'------------------------------------------------

Function Servidor()
    With Cadena
        .Ruta = ThisWorkbook.Path & "\Base\"
        .Base = "BFactura.accdb"
        .Clave = ""
        .Tipo = 1
    End With
End Function

Y que en el Workbook, en el evento Open se cree la llamada al Servidor

Private Sub Workbook_Open()
    Call Servidor
End Sub

El problema se me da al querer llamar al servidor, pues me marca la palabra "Cadena" en amarillo, y me dice que el control Activex no puede crear el objeto, y al pasar el mouse por la palabra Cadena, me dice Objeto o Variable With no establecido. 

Según el tutorial, se debía seleccionar en Referencias la dll que él facilitó en su ejecutable, pero aunque ya la tengo marcada me sigue saliendo el error.

Ustedes me podrían ayudar a solucionar este inconveniente, o por lo menos indicarme cuál es el error, y cómo corregirlo.

De antemano muchas gracias por su ayuda.

 

 

Facturacion.rar

publicado

Hola

Para ser sincero, no podria darte una solucion a tu tema porque tendria que ver como se hace en el tutorial. No obstante y por reglas del foro, no se puede colocar links que no esten permiidos por el foro.

Sin embargo, mi propuesta es con la siguiente dadena de conexion que uso en mis proyectos:

Sub Conectar()
Dim C_Error As Boolean
 
Set Cnn = New ADODB.Connection
On Error GoTo Salir

    With Cnn
        .Provider = "Microsoft.ACE.OLEDB.12.0"
        .ConnectionString = "Data Source=" & ThisWorkbook.Path & "\DbPT.accdb": C_Error = True
        .Open
    End With
    Exit Sub
Salir:
    C_Error = False
    MsgBox Err.Description
End Sub

Por supuesto debes activar las referencias microsoft activex data objects 2.xxx library y declarar las variables de conexión 

Public Cnn As ADODB.Connection
Public Rs As ADODB.Recordset

 

Saludos

  • Silvia bloqueó este tema

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.