Guardar datos de celda Excel en Mysql

Estuve leyendo el artículo que usted tiene publicado referente a guardar datos desde una hoja de Excel, hacia una base de datos Mysql (https://abrahamexcel.blogspot.com/search/label/Excel%20MySQL), me pareció estupendo y estuve practicando para hacer una conexón y funcionó perfecto, pero en el ejemplo que usted plantea, que se guardan los datos de una fila con la siguiente instrucción (omito el principio y final de la macro dado que funciona perfecto):

For x = 2 To UltimaFila
Set rst = New ADODB.Recordset
Let sql = "Insert Into tablapruebas (Nombre, País, Fecha) Values ('" & Range("A" & x).Value & "','" _
& Range("B" & x).Value & "','" & Format(Range("C" & x).Value, "yyyy-mm-dd") & "')"
With rst
.CursorLocation = adUseClient
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
.Open sql, cnn, , , adCmdText
End With
Set rst = Nothing
Next x

La pregunta concreta es cómo puedo cambiar la instrucción para que en la tabla "ventas" de Mysql, en la columna llamada "EMPRESA" se guarde el dato que está en la hoja llamada "CONFIGURACION" en la celda B11, y en la misma tabla "ventas", en la columna llamada "COD_KEY", que me guarde el dato de una hoja llamada "temporal elect" de la celda B18.

Agradezco me ayude dato que he estado toda la tarde modificando el código pero no logro el objetivo.

1 Respuesta

Respuesta
1

[Hola

No hay métodos "cortos" para insertar en múltiples tablas a la vez, una forma usual usada en MySQL es "encapsular" todo en un sólo "Stored Procedures", pero en realidad dentro de ellos sigue habiendo varas inserciones diferentes. ¿Qué hacer entonces? Yo la verdad, cuando de VBA se trata y no necesariamente se domina muy bien el SQL, creo que es más práctico realizar el número necesarios de inserciones como tablas tenemos, es decir, una línea SQL con "Insert Into" por cada tabla (y su respectiva inserción con el recordset). Esa es mi recomendación.

Abraham Valencia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas