ash2
2010-01-19 09:50:23 UTC
Hola a todos,
Hace mucho que no toco Access pero antes lo manejaba bastante. He
tenido que tocar un formulario de una aplicación que hice hace 5 años.
Tengo que insertar en un text_box, al crear un nuevo registro, el
numero de registro siguiente al número insertado, pero me da un
error. Se ha poducido un error "3061" en tiempo de ejecución: Too few
parameters. Expected 1.
Mi código es el siguiente; y el error me lo da en el set:
Private Sub AÑADIR_Click()
On Error GoTo Err_AÑADIR_Click
Dim ultimo As Integer
Dim rs As Recordset
DoCmd.GoToRecord , , acNewRec
Set rs = CurrentDb.OpenRecordset("SELECT Max(SALIDAS_2000.[NUMERO
SALIDA]) AS UltimaSalida FROM SALIDAS_2000 WHERE (((SALIDAS_2000.[AÑO
DE TRABAJO])=[Formularios]![REGISTRO GENERAL]![AñoTrab]))")
If Not IsNull(rs("UltimaSalida")) Then
ultimo = rs("UltimaSalida") + 1
Else
ultimo = 1
End If
Me.NUMERO_SALIDA = ultimo
Exit_AÑADIR_Click:
Exit Sub
Err_AÑADIR_Click:
MsgBox Err.Description
Resume Exit_AÑADIR_Click
End Sub
¿Por que falla?
Un saludo a todos
Hace mucho que no toco Access pero antes lo manejaba bastante. He
tenido que tocar un formulario de una aplicación que hice hace 5 años.
Tengo que insertar en un text_box, al crear un nuevo registro, el
numero de registro siguiente al número insertado, pero me da un
error. Se ha poducido un error "3061" en tiempo de ejecución: Too few
parameters. Expected 1.
Mi código es el siguiente; y el error me lo da en el set:
Private Sub AÑADIR_Click()
On Error GoTo Err_AÑADIR_Click
Dim ultimo As Integer
Dim rs As Recordset
DoCmd.GoToRecord , , acNewRec
Set rs = CurrentDb.OpenRecordset("SELECT Max(SALIDAS_2000.[NUMERO
SALIDA]) AS UltimaSalida FROM SALIDAS_2000 WHERE (((SALIDAS_2000.[AÑO
DE TRABAJO])=[Formularios]![REGISTRO GENERAL]![AñoTrab]))")
If Not IsNull(rs("UltimaSalida")) Then
ultimo = rs("UltimaSalida") + 1
Else
ultimo = 1
End If
Me.NUMERO_SALIDA = ultimo
Exit_AÑADIR_Click:
Exit Sub
Err_AÑADIR_Click:
MsgBox Err.Description
Resume Exit_AÑADIR_Click
End Sub
¿Por que falla?
Un saludo a todos