VBA Excel 2010 conexión con Mysql

Cordial saludo experto, reciba un cordial saludo desde Colombia.
Quiero preguntarle por que razón al realizar el siguiente código de conexión de Excel (VBA) 2010 con una base de datos Mysql:

Dim oConn As ADODB.Connection
Dim rs As ADODB.Recordset
'
''''''Function ExcelMySql()
On Error GoTo err
Set oConn = New ADODB.Connection
oConn.Open "DRIVER={MySQL ODBC 3.51 Driver};" & _
"SERVER=localhost;" & _
"DATABASE=base;" & _
"USER=Facturacion;" & _
"PASSWORD=1234**;" & _
"Option=4"
'''''Exit Function
Exit Sub
err:
MsgBox "Se ha producido el siguiente error: " & err.Description, vbInformation, ActiveWorkbook.Name
''''''End Function
'
'''''''Function esc(txt As String)
esc = Trim(Replace(txt, "'", "'"))
''''''''End Function
Exit Sub
'
'
'''''''''''Function InsertData()
On Error GoTo Er
'Se elimina la llamada a la función de conexión a la base de datos para hacerlo cuando inicie el archivo
' Call ConnectDB
Set rs = New ADODB.Recordset
sFunction = Application.WorksheetFunction.CountA(Range("A:A"))
'
With shInsertData
For rowCursor = 3 To sFunction
strSQL = "INSERT INTO informacion_facturado (Id, Titulo Minero, Tipo, Ciclo, Producto, Zona, Etapa_contrarcual) " & _
"VALUES ('" & esc(.Cells(rowCursor, 1)) & "', " & _
"'" & esc(.Cells(rowCursor, 2)) & "', " & _
"'" & esc(.Cells(rowCursor, 3)) & "', " & _
"'" & esc(.Cells(rowCursor, 4)) & "', " & _
"'" & esc(.Cells(rowCursor, 5)) & "', " & _
esc(.Cells(rowCursor, 6)) & ", " '& _
Next
End With
MsgBox "Exito", vbInformation
'''''' Exit Function
Exit Sub
Er:
MsgBox "Error: " & err.Description, vbInformation, ActiveWorkbook.Name
'''''''End Function
''''''''End Function
End Sub

La aplicación no me realiza la conexión con la base de datos, me aparece, el siguiente error: [Microsoft] [Administrador de Controladores ODBC] No se encuentra el nombre de origen de datos y no se especifico ningún controlador predeterminado.
a que se deberá eso?


Muchas gracias por la colaboración
Att. Ing. Hernán Camilo Martínez V.

1 Respuesta

Respuesta
1

Una cadena de conexión no puede decir Localhost, porque asume o busca el servidor de base de datos en la misma computadora donde se esta ejecutando.

Debes colocar el nombre del servidor o la IP que tenga el servidor.

Hola muchas gracias

El problema persiste le pongo en en server la dirección ip de mi equipo o 127.0.0.1 y me aparece el mismo error

¿Tu estas seguro que la cadena de conexión que estas utilizando es la correcta?

revisa aquí: http://www.connectionstrings.com/mysql-oledb-mysqlprov/

Esta pagina tiene las cadenas de conexión de acuerdo al tipo de conexión y de base de datos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas