Mmmm vaya, basandome en el código que me expusiste antes, he realizado una prueba pero parece que no hace realmente nada... creo que algo me falla en él:
Código:
Private Sub Comando1_Click()
Dim rst1 As dao.Recordset
Dim rst2 As dao.Recordset
Dim rst3 As dao.Recordset
Dim y As Integer
Set rst1 = CurrentDb.openrecordset("select cod, valor1 from Descripcion")
While Not rst1.EOF
Set rst2 = CurrentDb.openrecordset("select sum (valor1) as suma1 FROM Descripcion Where cod = " & rst1("cod"))
Set rst3 = CurrentDb.openrecordset("select valor2 FROM Maestro where cod = " & rst1("cod"))
y = (rst3("valor2") / rst2("suma1")) * rst1("valor1")
DoCmd.RunSQL "INSERT INTO Descripcion.valor_final (" & y & ")"
rst2.Close
rst3.Close
rst1.MoveNext
Wend
rst1.Close
Set rst1 = Nothing
End Sub
P.D.: Muchas gracias por tu ayuda