** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Campo Bloqueado
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoCampo Bloqueado

 Responder Responder
Autor
Mensaje
maserrano Ver desplegable
Colaborador
Colaborador


Unido: 02/Abril/2014
Localización: España
Estado: Sin conexión
Puntos: 690
Enlace directo a este mensaje Tema: Campo Bloqueado
    Enviado: 21/Febrero/2024 a las 11:52
Buenas de nuevo
Una consulta que os propongo y que no sé si se puede resolver.
La pregunta es que si se puede bloquear un campo de cuadro combinado para que no se pueda modificar.
Si pongo la propiedad  bloqueado no me deja elegir en el combo, con lo que el bloqueo debe ser una vez que se ha guardado, supongo, o cualquier otro evento una vez que contenga el dato. Supongo que debe ser con VBA pero no sé cómo.
Alguna sugerencia?
Muchas gracias.

Arriba
ximo Ver desplegable
Colaborador
Colaborador
Avatar

Unido: 03/Marzo/2006
Localización: España
Estado: Sin conexión
Puntos: 2095
Enlace directo a este mensaje Enviado: 21/Febrero/2024 a las 13:37
Hola,
Hay una propiedad que es limitar a la lista, entonces solo se puede elegir no modificar.

Saludos, ximo
La incansable busqueda de información abre nuestras mentes

Saludos desde Burriana
Arriba
maserrano Ver desplegable
Colaborador
Colaborador


Unido: 02/Abril/2014
Localización: España
Estado: Sin conexión
Puntos: 690
Enlace directo a este mensaje Enviado: 21/Febrero/2024 a las 23:23
Gracias Ximo, pero esa solución no me es válida, ya que lo que busco es que no se modifique el elegido (una vez elegido de los valores que hay en la lista del combo).
En la práctica, el combo despliega una serie de valores y, al elegir uno, se cargan una serie de campos por medio de una consulta que depende de esa elección. Lo que busco es que una vez elegido ese valor no se pueda modificar. La verdad, es que no sé si se puede hacer esto que comento...
Gracias de nuevo.
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: Sin conexión
Puntos: 14428
Enlace directo a este mensaje Enviado: 21/Febrero/2024 a las 23:37
Los controles de Access tienen una propiedad Locked, que puede estar a True o False.
Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
maserrano Ver desplegable
Colaborador
Colaborador


Unido: 02/Abril/2014
Localización: España
Estado: Sin conexión
Puntos: 690
Enlace directo a este mensaje Enviado: 22/Febrero/2024 a las 08:04
Buenas.
Pero la propiedad Locked se establece en el campo y:
Es True: No me deja agregar dato alguno
Es False: Te deja incluir dato
(o eso entiendo yo).
El caso es que debe dejar grabar dato si el campo (en este caso cuadro combinado) está vacío y, lo contrario, si ya contiene algún dato. 
Algo así...

If Me!Combinado_com = "" Then
       Me!Combinado_com.Locked = False
    Else
        Me!Combinado_com.Locked = True
    End If

En su momento hice algo parecido pero anivel de formulario entero. Al abrirlo, todos los campos están bloqueados, y sólo al introducir un nuevo registro (evento botón que abría el mismo formulario pero en forma de edición), si permitía grabar datos.
..., igual tengo que hacerlo así.
Salu2
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: Sin conexión
Puntos: 14428
Enlace directo a este mensaje Enviado: 22/Febrero/2024 a las 08:37
Aplica en Access el concepto que tienes:
- no he introducido valor: campo libre
- he introducido valor : campo bloqueado

Los controles tienen eventos, úsalos. Si tienes dudas de cuáles son las posibilidades que tiene Access, sus controles, sus formularios (que veo que estás un pelín verde) te recomendaría que siguieras el curso de Eduardo Olaz que tenemos en este mismo foro, cuando lo termines verás mucho más claro todo.

Un saludo.



Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
maserrano Ver desplegable
Colaborador
Colaborador


Unido: 02/Abril/2014
Localización: España
Estado: Sin conexión
Puntos: 690
Enlace directo a este mensaje Enviado: 22/Febrero/2024 a las 16:32
Vale, Solucionado.

Supongo que no hay nada como un tirón de orejas...

Son dos combos los que bloqueo una vez introducido dato:

Private Sub Form_Current()

If IsNull(Me.CboIdOperador.Value) Then
Me.CboIdOperador.Locked = False
Else
Me.CboIdOperador.Locked = True
End If

If IsNull(Me.CboIdROC.Value) Then
Me.CboIdROC.Locked = False
Else
Me.CboIdROC.Locked = True
End If

End Sub

Se puede cerrar el hilo.
Gracias





Editado por maserrano - 22/Febrero/2024 a las 16:33
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: Sin conexión
Puntos: 14428
Enlace directo a este mensaje Enviado: 22/Febrero/2024 a las 16:51
Thumbs Up
Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable