** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - No me DoCmd.OpenForm "f_clientes", , , , acFormAdd
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoNo me DoCmd.OpenForm "f_clientes", , , , acFormAdd

 Responder Responder
Autor
Mensaje
llulius Ver desplegable
Nuevo
Nuevo


Unido: 18/Diciembre/2015
Localización: vigo
Estado: Sin conexión
Puntos: 37
Enlace directo a este mensaje Tema: No me DoCmd.OpenForm "f_clientes", , , , acFormAdd
    Enviado: 12/Octubre/2018 a las 09:09
Quiero poner un boton con DoCmd.OpenForm "f_clientes", , , , acFormAdd , pero no me funciona lo siguiente, que me avise que el cliente existe y que me abra ese registro.
Si lo abro solo con DoCmd.OpenForm "f_clientes" me funciona bien .
En el campo del nombre en el evento antes de atualizar tengo
Private Sub Nombre_BeforeUpdate(Cancel As Integer)
  Dim rs As Object ''declaramos una variable tipo objeto

             Set rs = Me.RecordsetClone ''creamos el Clon del recordsert
       
            rs.FindFirst "[Nombre] = '" & Trim(Me.Nombre) & "'" ''buscamos en el clon por IdCliente que coincida con el IdCliente del formulario
   
                  
            If Not rs.NoMatch Then ''si esto se cumple es porque lo hemos encontrado y
                                   ''lanzamos un mensaje indicando el código y nombre de proveedor, aquí hay una cosa
                                   ''especial que quiero mencionar y es que cuando queremos entrecomillar un objeto como
                                    ''lo hacemos en el msgbox le hacemos poniendo delante y detrás de él con cuatro comillas ("""")
                                    ''y si está en un texto como "Aceptar" lo ponemos con dos comillas dobles ("")
                                    ''Lo de Ucase te lo dejo a tí.
                
                 MsgBox "El Cliente o Empresa: " & Me.Nombre.Text & " y Contacto: " & "" & UCase(rs.Fields("Contacto").Value) & " " _
                  & " está dado de alta." & Chr(13) & Chr(13) & "Irémos a él después de pulsar el botón ""Aceptar"".", vbOKOnly, "Aviso..."
               
                Me.Undo ''deshacemos los cambios porque lo hemos encontrado en el clon del formulario
                 Me.Bookmark = rs.Bookmark ''cuando lo encontramos lo sincronizamos.
                           
            End If
End Sub
Arriba
emiliove Ver desplegable
Moderador
Moderador


Unido: 16/Junio/2009
Localización: Mexico
Estado: Sin conexión
Puntos: 4659
Enlace directo a este mensaje Enviado: 12/Octubre/2018 a las 16:33
Y que error te da, que linea se pone amarilla.

Saludos.
Arriba
llulius Ver desplegable
Nuevo
Nuevo


Unido: 18/Diciembre/2015
Localización: vigo
Estado: Sin conexión
Puntos: 37
Enlace directo a este mensaje Enviado: 12/Octubre/2018 a las 17:05
lo e vuelto a ejecutar y ahora al darle a grabar me sale lo correcto .Que es error 3022 por que se crearian valores duplicados.
Bueno doy por cerrado el tema.
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable