Access - NO PUEDORRRR, NO PUEDORRRRRR

 
Vista:

NO PUEDORRRR, NO PUEDORRRRRR

Publicado por Javier Aguilar (5 intervenciones) el 10/06/2001 14:20:06
Hola a todos. A ver si alguien me puede ayudar. Tengo un formulario de
clientes el cual incluye un subformulario en vista hoja de datos y varios
botones para Añadir, Borrar, Modificar, etc. Con estos botones abro otro
formulario para realizar esas funciones. El caso es que me gustaría que
cuando agregara un cliente nuevo y saliera del formulario abierto con los
botones, me gustaría que en el formulario principal, el cursor se me fuera al nuevo cliente que he añadido. Lo he hestado intentando con RecordsetClone y FindFirst pero no hay manera de que me funcione. El código que tengo en el formulario donde grabo el nuevo cliente es el siguiente:

Private Sub Form_Unload(Cancel As Integer)

Dim Rst As Recordset
Dim NombreBúsqueda As String

Forms![Formulario Clientes - Resúmen]![SubFormulario del Formulario
Clientes - Resúmen].Requery
Set Rst = Forms![Formulario Clientes - Resúmen]![SubFormulario del
Formulario Clientes - Resúmen].Form.RecordsetClone
NombreBúsqueda = Str(Me.Nº_Cliente)

"A partir de aqui es donde se corta y me sale el error Se ha producido
el error 3077 en tiempo de ejecución. Error de sintaxis en la expresion"
Rst.FindFirst "Nº Cliente = " & NombreBúsqueda
If Rst.NoMatch = False Then
Forms![Formulario Clientes - Resúmen]![SubFormulario del Formulario
Clientes - Resúmen].Bookmark = Rst.Bookmark
End If

End Sub

Ojalá alguien me pueda ayudar porque llevo varios dias con esto liado
probando de todo y no hay manera.

Muchas gracias. Un saludo desde Jerez.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

NO PUEDORRRR, NO PUEDORRRRRR

Publicado por Alejandro (4142 intervenciones) el 14/04/2023 23:41:44
Hola Javier.

El error que estás obteniendo se debe a que estás utilizando una sintaxis incorrecta para la búsqueda en el recordset. En lugar de utilizar "Nº Cliente" en la expresión, debes utilizar el nombre del campo tal y como aparece en la tabla. Además, es importante que tengas en cuenta que el nombre del campo debe ir entre corchetes si contiene espacios o caracteres especiales.

Por lo tanto, te sugiero que pruebes con el siguiente código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Private Sub Form_Unload(Cancel As Integer)
 
Dim Rst As Recordset
Dim NombreBúsqueda As String
 
Forms![Formulario Clientes - Resúmen]![SubFormulario del Formulario Clientes - Resúmen].Requery
Set Rst = Forms![Formulario Clientes - Resúmen]![SubFormulario del Formulario Clientes - Resúmen].Form.RecordsetClone
NombreBúsqueda = Str(Me.Nº_Cliente)
 
Rst.FindFirst "[Nº Cliente] = " & NombreBúsqueda
If Rst.NoMatch = False Then
Forms![Formulario Clientes - Resúmen]![SubFormulario del Formulario Clientes - Resúmen].Bookmark = Rst.Bookmark
End If
 
End Sub

Espero que esto te ayude a resolver el problema. ¡Suerte!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar