RE:Agregar un registro a una lista
Sacado de las web
Si tenemos tablas para las que no disponemos de formularios
de mantenimiento, pero las utilizamos en cuadros combinados,
con lo que existe la posibilidad de que el usuario quiera añadir
un nuevo elemento a la lista, mediante el siguiente procedimiento
se añade un nuevo MES a la tabla "meses" sin necesidad
de abrir un formulario de altas.
En la propiedad "Al no estar en la lista" del cuadro combinado escribimos
el siguiente procedimiento:
Sub id_mes_notinlist(newdata as string,response as integer)
dim mensaje as string,titulo as string,respuesta as integer
dim db as database,r as recordset,codigo as byte
mensaje = "El período no se encuentra en la lista, ¿desea darlo de alta?"
titulo = "Nuevo Mes"
respuesta = msgbox(mensaje,36,titulo)
if respuesta = 6 then 'Si se desea dar de alta el nuevo mes
set db = currentdb()
set r = db.openrecordset(Tmes)
r.addnew
codigo = ult_idmes() + 1 'Función que obtiene el último cod. de mes de la tabla
r![id_mes] = codigo
r![nombre] = newdata
r.update
r.close
origen = "Select id_mes,nombre From Tmes" 'Se actualiza el origen de la fila
me![id_mes].rowsource = origen
me![id_mes].requery
me![id_mes] = codigo 'Se asigna el nuevo código
else
me![id_mes] = null
docmd.gotocontrol "id_mes"
end if
response = data_errcontinue
End Sub