Insertar en una tabla o en otra según el valor de un c

Hola de nuevo, después de tu ayuda, me encuentro con otro problemilla, haber si tengo la misma suerte y me puedes ayudar.
Te cuento, tengo un formulario con un cuadro de texto, el cual el usuario pone su código, entonces me gustaría que todos los datos se guardasen en una tabla que lleva su nombre, que es el mismo dato que ha entrado por el cuadro de texto.
Ejemplo:
Nombre tabla: "Juan"
En el formularuio, el valor que entran en el cuadro de texto es "Juan"
Entonces quiero que todos los datos se guarden en la tabla "Juan"
Las instrucciones que uso para guardar en las tablas, son directamente de sql, es importante que sea así por la interacion de los usuarios.
El problema es como puedo definir el valor que va después de INSERT INTO ya que no se como expresar ahí el cuadro de texto.
DoCmd.RunSQL "INSERT INTO [Forms!Inici![Usuari]] (Usuari,dia,hora,accio,motiu) Values ([Formularios]![inici]![usuari],[Formularios]![inici]![dia],[Formularios]![inici]![hora],[Formularios]![inici]![accio_entrada], [Formularios]![inici]![motiu_inici]);"
Espero haberme explicado con claridad.
Resto a la espera de tu respuesta.
Gracias.
Arnau

1 Respuesta

Respuesta
1
Trabaja con el SQL como una cadena de texto y descomponlo en tantas partes como te sea necesario.
dim strSQL as string
dim tblInsert as string
dim Val1 as string
dim Val2 as Long
tblInsert = me.txtUsuario
Val1 = me.txtMotivo
Val2 = me.txtCantidad
strSQL = "INSERT INTO " & tblInsert & " (Campo1, Campo2)"
strSQL = strSQL & " VALUES ( ' " & Val1 & " ', " & Val2 & ");"
Docmd. Runsql strSQL
Si lo haces de esta manera puedes seguir en debug (copiar y pegar en vista SQL de una consulta para ver en que te falla)
Ten en cuenta:
- Cuando se pone strSQL = strSQL " VALUES ..." hay un espacio justo antes de VALUES, para que quede ...) VALUES... y no ...)VALUES..., si no tiene lo espacios adecuadso fallará
- Cuando manejas cadenas SQL en código como cadena de texto el delimitador de texto es la comilla simple ' para diferenciarlo del delimitador de texto en código, la comilla doble "; en vista diseño de consultas ' y " funcionan correctamente. Yo sólo uso ' para poder usar el SQL de las cadenas siempre en código fácilmente. Lo puedes ver en la parte del Val 1

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas