Tengo un formulario filtrado desde una consulta (formulario principal) con dos subformularios de dos tablas diferentes (tabla1 y tabla2).
Mi intención es cuanto tengo todos los campos rellenos, al darle a un botón de guardar, guardar los datos de dos de los campos (IdTbl1 y IdTbl2) en una tercera tabla (tabla 3).
Intento utilizar una macro que anteriormente me facilitasteis, pero en este caso no me funciona puesto que este código busca los campos en el formulario principal (el de la consulta) y por lo tanto me da un error.
No puedo adjuntar la base de ejemplo porque ya la tengo bastante avanzada y con datos personales.
La línea que me da error es la siguiente:
que supongo que es porque no encuentra el campo donde están los datos, puesto que los busca en el formulario principal.iIdTbl1 = oForm.parent.getByName("IdTbl1").Text
El código que intento utilizar es el siguiente:
Código: Seleccionar todo
Sub GuardarDatosTbl3(Evento)
Dim oDeclaracion As Object
Dim sSQL As String
Dim oForm As Object
Dim iIdTbl1 As Integer
Dim iIdTbl2 As Integer
Dim Control as Object
oForm = Evento.Source.Model.Parent
iIdTbl1 = oForm.parent.getByName("IdTbl1").Text
iIdTbl2 = oForm.Parent.getByName("IdTbl2").Text
oDeclaracion =ThisDatabaseDocument.CurrentController.ActiveConnection.CreateStatement
'Ordenes SQL a ejecutar
sSQL = "INSERT INTO ""Tbl3"" (""IdTbl1"", ""IdTbl2"") VALUES (" & iIdTbl1 & "," & iIdTbl2 & ")"
oDeclaracion.executeUpdate( sSQL )
End Sub