¿Cómo puedo añadir de forma automática registros en tablas de Microsoft Access al crear un proyecto?

Buenas...
Mira, tengo una tabla de "Proyectos". En esta tabla doy de alta los nombre de los proyectos nuevos. Tengo otra tabla "Participación". Esta tabla consta de los campos: "Proyecto", "Fase", "% Participación alumno presencial", "% Participación alumno a distancia" y otros campos... Cada proyecto consta de 3 fases...
¿Cómo puedo hacer para que cuando yo cree un proyecto en la Tabla "Proyectos", automáticamente me cree 3 registros en la Tabla "Participación" cada uno con ellos con distinto nº de fase?
Me explico...
Abro la tabla "Proyecto", creo el proyecto "FIFO", cierro la tabla. Abro la Tabla "Participación"... Y me gustaría ver como para "FIFO" tengo creado 3 registros: 1 registro con nº de fase 1, otro registro con nº de fase 2 y otro registro con nº de fase 3, el resto de campos los rellenaría yo, excepto, claro el del nombre de proyecto que ya lo coge de la tabla "Proyectos".
Gracias!

1 respuesta

Respuesta
1
Por medio se un trozo en el evento afterupdate o afterinsert
dependiendo de lo que quieras, agregarías en la otra tabla los 3 registros
seria
Private Sub Form_AfterInsert()
    Dim r As Recordset
   Set r = CurrentDb.OpenRecordset("select * from Participación", dbOpenDynaset)
for a=1 to 3
    r.addnew
    otros campos
    Fase=a
    r.update
next
End Sub 
Si se puedes envíamelo en formato 2003
Buenas Luís...
Gracias! Qué crack!
Una curiosidad... en este código:
Private Sub Form_AfterInsert()
    Dim r As Recordset
   Set r = CurrentDb.OpenRecordset("select * from Participación", dbOpenDynaset)
for a=1 to 3
    r.addnew
    otros campos
    Fase=a
    r.update
next
End Sub 
¿Es posible no limitar el número de registros que automatice? ¿Me refiero a si en el comando a = 1 to 3 podría ser a = 1 to ("valor de un campo de la tabla") para que yo lo inserte manualmente?
Gracias
Si haz un recordset de fases y toma el recordcount y lo usas para el contador final
Luís...
No te entiendo... nunca he usado "recordeset" y "recordocunt"...
¿En qué parte del comando que me mandaste lo tengo que meter? ¿Cómo?
El comando que me mandaste, me funciona genial, tan sólo me falta eso...
Gracias.
Acá
    Dim r As Recordset
   Set r = CurrentDb.OpenRecordset("select * from Participación", dbOpenDynaset)
for a=1 to 3
agregas
    Dim r As Recordset, r1 as recordset
   Set r = CurrentDb.OpenRecordset("select * from Participación", dbOpenDynaset)
   Set r1 = CurrentDb.OpenRecordset("select * from Fases", dbOpenDynaset)
for a=1 to r1.recodcourt

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas