Manejo de registros en Access

Quiero generar una tabla a partir de otra, que de acuerdo a los valores de sus campos almacenara determinados valores en la nueva. Quiero hacerla utizando código y no consultas de actualización(pues serian varias), a partir del click en determinado control. Nunca lo he hecho en access, ¿cómo recorro cada registro de una y grabo en otra? Espero que sepan interpretar mi pregunta, sino tratare de formularla a través de un ejemplo. Gracias
{"Lat":-36.0313317763319,"Lng":-58.7109375}

1 respuesta

Respuesta
1
Para hacer lo a través de código, en modo general, ya tendrías que amoldarlo a tu base de datos seria así:
'### incio codigo ###
'Lo primero es crear crear un recorset, una consulta con los datos que queremos y lo guardamos en una variable:
Set rst = "Select Campo1, Campo2, Campo3 FROM MiTabla"
'Una vez hecho esto comprobamos que devuelve algun registro
if rst.eof and rst.bof then
Msgbox "No hay registros en la tabla" 'Mostramos un mensaje
exit sub 'salimos
end if
Si hay datos entonces empezamos a recorrer los registros de la consulta.
While not rst.eof 'mientras que no lleguemos al ultimo registro
Valor_Campo1 = rst.fields(0) 'guarda en la variable el valor del primer campo de la consulta
Valor_Campo2 = rst.fields(1) 'guarda en la variable el valor el segundo campo de la consulta
Valor_Campo3 = rst.fields(2) 'guarda en la variable el valor del tercer campo de la consulta
'Ahora imaginamos que cuando el valor del campo "Campo1" sea mayor que 5 insertamos el registro en una nueva tabla que llamamos "Tabla_Anexa".
If Valor_Campo1 > 5 then
Currentdb.Execute("INSERT INTO Tabla_Anexa(Campo1, Campo2, Campo3) Values(" & Valor_Campo1 & ", " & Valor_Campo2 & ", " & Valor_Campo3 & ";)")
end if
rst.movenext  'Pasamos al siguiente registro
end while
'### Fin codigo ###
Solo te faltaría meter este código dentro del evento que más te convenga del control.
Gracias por tu rápida respuesta. Voy a probar lo que me pasaste y vuelvo a contactarme.
¿Cómo te ha ido? ¿Has logrado hacerlo al final?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas