Insertar datos mediante Excel a MySql

Acudo nuevamente a su amable colaboración

Tengo un formulario en Excel que almacena varios datos en una tabla en el mismo libro, deseo almacenar esos datos directamente en una tabla de MySql,

Me gustaría poder hacerlo con Vba desde el botón guardar del formulario.

2 Respuestas

Respuesta
1

El siguiente código es ilustrativo, deberías adaptarlo a tus necesidades, es para que tomes la idea de como se hace la conección y como se insertan datos en la tabla MySQL (continua leyendo abajo):

Sub FabianPerez()
'variables de la conexion'
Dim Server As String: Server = "direccion del servidor"
Dim NombreDB As String: NombreDB = "nombre de la base de datos"
Dim ServerUser As String: ServerUser = "nombre de usuario"
Dim ServerPass As String: ServerPass = "contraseña"
Dim NombreTabla As String: NombreTabla = "nombre de la tabla"
'variables de la base de datos'
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim sqlStr As String
'conectarse a MySql usando el conector ODBC'
Set conn = New ADODB.Connection
conn.Open "DRIVER={MySQL ODBC 5.3 Unicode Driver};" _
& "SERVER=" & Server & ";" _
& "DATABASE=" & NombreDB & ";" _
& "UID=" & ServerUser & ";" _
& "PWD=" & ServerPass & ";" _
& " OPTION=3"
Set rs = New ADODB.Recordset
'Insertar'
sqlStr = "INSERT INTO" & NombreTabla & "(campo1, campo2, campo3, campo4) VALUES('" & valor1 & "','" & valor2 & "','" & valor3 & "','" & valor4 & "')"
rs.Open sqlStr, conn, adOpenStatic
Set rs = Nothing
conn.Close
Set conn = Nothing
End Sub

Así es como yo lo haría, usando el conector ODBC.

Es posible de que copies el código y le cambies los parámetros y todo luzca bien pero aun así que no funcione. Bueno eso es porque quizás tu PC no tiene instalado el driver de ODBC.

Puedes comprobarlo en las Herramientas Administrativas. Debes buscar la versión, si ves en mi código uso la 5.3 Unicode.

Si no lo tienes, lo puedes descargar de MySQL en el siguiente enlace:

Descargar conector ODBC

Es posible que la versión sea diferente así que también debes adaptar eso en el código en la linea: conn.Open "DRIVER={MySQL ODBC 5.3 Unicode Driver};

Probablemente esto lo tendrás que hacer una sola vez en cada PC que use tu archivo Excel.

Creo que eso es todo,

Andy M.

Respuesta
1

[Hola

Para conectar MySQL y Excel hay varias formas, yo sugiero comenzar leyendo esto:

https://abrahamexcel.blogspot.com/2019/02/excel-y-mysql.html

Saludos]

Abraham Valencia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas