Enviar datos de un formulario a una tabla ACCESS

Tengo un formulario con campos de diferentes tablas, pero agregue cajas de texto las cuales yo ingreso algún valor y quiero que ese valor independiente se registre en un tabla la cual no tiene relación con el formulario ni con las tablas utilizadas. Ejemplo:

Formulario ventas utiliza la tabla ventas, pero tengo cajas de texto que se llama id_cliente, id_usuario, etc, entonces al ingresar un valor en ambas, quiero que se manden a una tabla "x" que registre esos valores. Intenté relacionándolas pero me marca error, y deseo un código que me permita hacer eso

2 Respuestas

Respuesta
3

Puedes hacerlo de varias formas.

1º Supongamos que los campos de la tabla X se llaman igual que los cuadros de texto del formulario. Puedes poner un botón y en el evento Al hacer clic crea un procedimiento de evento y entre Private Sub y End Sub escribe

docmd.setwarnings false

docmd.runsql"insert into tablaX(cliente,direccion,idusuario,....)values('" & me.cliente & "', '" & me dirección & "',.........)"

Los campos no tienen que llamarse igual, lo que si tienen que ser valores compatibles, o sea, texto en texto, numero en numero, etc.

Esto lo que hace es insertar los valores que aparecen en ese momento en el formulario.

2º Si tienes una forma de individualizar un registro en particular podrías poner

docmd.runsql"insert into tablax select cliente, dirección, teléfono from clientes where.....

Ya lo hice con el número 1 y si me funcionó a la perfección, solo un detalle supongo que tengo ya 10 registro de esta TABLAX, AL OPRIMIR EL BOTÓN, tendría que ir el numero 11, pero no aparece, cuando vuelo a ingresar datos y oprimo el botón, sería el 12, y checo la tabla y ya esta el 11, pero el 12 no aparece, siempre el último 

En el caso de que en el formulario tuvieras ya varios registros y quisieras que te los insertara todos en la tabla, lo que yo haría, sería, por ejemplo, poner un botón y en sus propiedades-eventos-al hacer clic

Docmd. Setwarnings fasle

Domcd. Gotorecord,, acfirst

dim i as integer

for i=1 to form.recordset.recordcount

Docmd. Runsql... la instrucción que habías puesto

Docmd. Gotorecord,, acnext

next

Así, cuando pulses el botón se irá al primer registro, tomará los valores y te los inserta en la tablax, se va al siguiente registro y repite lo mismo, y así hasta que se acaben los registros del formulario.

De todas formas, si quieres, repito, si quieres mándame un mensaje(solo el mensaje) a [email protected] y te mando un ejemplo. Si lo haces, en el asunto del mensaje pon tu alias Serenta, ya que si no sé quien me escribe ni los abro.

Respuesta

La respuesta que te dan es la más acertada

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas