Access, Insertar "N" número de veces un registro...

N" Número de registros a una tabla (según sea el valor del campo "Cantidad"). Insertar a la tabla: "ArticulosAlmacen" de la tabla: "Gastos" mediante su formulario "FrmGastos". Los campos son: "IdArt", "IdGas", "IdProv", "Fecha", "PUnit". El mismo registro se insertará tantas veces como sea el valor del campo "Cantidad" del formulario "Gastos"

1 respuesta

Respuesta
2

Fabriccio: Puedes hacerlo en el click de un Botón o el Evento AfterUpdate de Cantidad

Has de Usar un Bucle For ... Next y una Instrucción de anexado INSERT >> Algo así:

Private Sub Cantidad_AfterUpdate()
Dim Veces As Byte 'No creo que sobrepases 255 para declarar un Integer
For Veces = 1 To Me.Cantidad
Currentdb.Execute "INSERT INTO NombreDeLaTabla (IdArt, IdGas, ...) VALUES (" & Me.IdArt & ",...
Next Veces
End Sub

Para la construcción de los >> Values, según sea el tipo de datos, te adjunto el enlace de una respuesta que di a un usuario en el que se ven los Formatos.

Crear consulta de anexar y borrar (para sacar registros de una tabla y pasarlos a otra)

Un saludo >> Jacinto

Hola Jacinto Trillo, gracias por compartir tus conocimientos y por tomarte el tiempo de responder.

He pegado y modificado tu código, pero marca error en la línea de currentDb ("error 3134, Error de sintaxis en la instrucción INSERT INTO ")  También chequé el enlace de construcción de los tipos de datos, jugué con ellos (las comillas) para ver si así corría, incluso traté de insertar un sólo campo, pero nada. Quedó así:

Private Sub Aceptar_Click()
Dim Veces As Byte 'No creo que sobrepases 255 para declarar un Integer
For Veces = 1 To Me.Cant
CurrentDb.Execute "INSERT INTO Articulos-Almacen (IdGas) VALUES (" & Me.IdGas & ")"
Next Veces
End Sub

El formulario [FrmVisorGas] (que a su vez tiene un subformulario) se alimenta directamente de la tabla "ArticulosGasto". Al abrir [FrmVisorGas] es filtrado por el campo "IdArt" mediante la selección del registro en otro formulario. Te comento todo esto por las situaciones por las que pasó Esteban (El otro usuario que ayudaste). Nuevamente gracias.

Fabriccio: Supongo que no hay ningún error en los Nombres y que IdGas es un número.

Si eso es así, prueba poniendo [Artículos-Almacen] entre corchetes y me cuentas.

También doy por supuesto que Cant es menor que 255. Un saludo >> Jacinto

Disculpa la tardanza en contestar. No había podido cambiar la sintaxis por cuestiones de trabajo. Pero era precisamente eso lo que necesitaba, poner entre corchetes la tabla destino.

Agradezco mucho tu orientación y tiempo Jacinto. Saludos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas