** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Locked ciertos items de un combobox tras IF
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Locked ciertos items de un combobox tras IF

 Responder Responder
Autor
Mensaje
ROBERTO_1980 Ver desplegable
Nuevo
Nuevo


Unido: 23/Febrero/2015
Localización: TOLEDO
Estado: Sin conexión
Puntos: 7
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita ROBERTO_1980 Cita  ResponderRespuesta Enlace directo a este mensaje Tema: Locked ciertos items de un combobox tras IF
    Enviado: 15/Abril/2019 a las 13:00

Hola buenos días a todos/as:

 Por favor, necesitaría me echaran un cable con lo que necesito:

 En un form de access, tengo incluido un combobox en el cual deseo que el usuario puedan ver todos los items del combobox, pero que en función de un if pueda elegir solo los item no bloqueados.
En mi caso el if sería en función del perfil del usuario logado: if lbl_perfil_activo =2 Then bloqueale los items 0 y 2 , pero no le bloques el item 1, del comobobox. 

Lo que no se, es como poner es el código a partir del Then (en el código que he anotado debajo lo anoto en rojo)

No se si me explico. Pongo el código que tengo hasta ahora:

Private Sub cc_Financial_Status_Change()
' Establezco variables
Dim Valor_id As Long
Dim Perfil_Activo As Long
Dim i As Integer
Dim Msg As String

' Me traigo el id del valor del item seleccionado, el id del tipo de perfil logado
Valor_id = Me.cc_Financial_Status.Value
Perfil_Activo = Me.lbl_Perfil_Activo

   ' Refresco el cbo
   Me.cc_Financial_Status.Requery
   
   ' Condición
    If Perfil_Activo = 2 And Valor_id = 0 Or Valor_id=2 Then
   
     Me.cc_Financial_Status.ItemsSelected.Locked = True
            
    Else
   
     Me.cc_Financial_Status.ItemsSelected.Locked = False
    End If

End Sub


Espero sus respuestas muy amables de antemano
Roberto
Arriba
xavi Ver desplegable
Administrador
Administrador
Avatar
Terrassa-BCN

Unido: 10/Mayo/2005
Localización: Catalunya ||||
Estado: Sin conexión
Puntos: 11824
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita xavi Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 15/Abril/2019 a las 17:31
Hola,

Como primera idea: cambia el RowSource del combo en función del Perfil_Activo de modo que solo aparezcan los seleccionables.

Hasta dónde yo se, no puede "deshabilitar" valores de un combo: si se muestra un valor, es elegible.

Un saludo
Xavi, un minyó de Terrassa

Mi web
Arriba
ROBERTO_1980 Ver desplegable
Nuevo
Nuevo


Unido: 23/Febrero/2015
Localización: TOLEDO
Estado: Sin conexión
Puntos: 7
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita ROBERTO_1980 Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 16/Abril/2019 a las 08:48
Buenos días Xavi,

Muchas gracias por tu respuesta.

La opción que dices no es mala, pero necesito que en el desplegable se muestren todas las opciones.

La idea es mostrar todos los items del combo, pero que por el tipo de perfil, el usuario solo pueda seleccionar los estados específicos a su perfil.

Un combo es cascada tampoco me sería válido, pues me acotaría los items
combo perfil: 2 (tipo perfil)   combo estados: 4,9

Si a alguien se le ocurre alguna manera de hacerlo, por favor, no dudeis en contestarme
Muchas gracias a todos de antemano
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: Sin conexión
Puntos: 10816
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita Mihura Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 16/Abril/2019 a las 09:42
Controla en el evento After_Update el valor escogido y el usuario, en caso de que no correspondan borra el valor escogido:

Select Case Perfil
Case 1
               If Me.Combo = 1 Or Me.Combo = 2 then Me.Combo = ""
Case 2
               If Me.Combo = 3  then Me.Combo = ""
        ...
End Select


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

Access Aplicaciones
Tecsys.es
Arriba
VIMIPAS Ver desplegable
Colaborador
Colaborador
Avatar

Unido: 06/Enero/2006
Localización: ESPAÑA
Estado: Sin conexión
Puntos: 5178
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita VIMIPAS Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 17/Abril/2019 a las 16:58
Buenas tardes.

En efecto, no se pueden bloquear filas de Combos.... pero nadie nos impide crear un formulario continuo y de la misma que encontramos una flechita para abrir el "combo", podemos tener en vez de un combo un formulario continuo con todas las opciones y poner un boton que abra ese formulario.

Y???? que???, como seguimos.

En ese formulario continuo deberíamos tener dos campos: Campo1 (las opciones), Campo2 (autorizado para el perfil). Este segundo campo, que es la clave para lo que explico, deberá estar en la propiedad Visible=no.

Entonces le pondremos a este formulario, en el campo1 y "en formato condicional" y dentro de "La expresión es" esto:

[campo1]<>Formularios!NOMBRE!PERFILES_AUTORIZADOS

y punto determinante, se pulsa al final a la derecha (bloquear) en la condición.

Quiero decir que Campo1 debe tener lo mismo que PERFILES_AUTORIZADOS, para no despistarnos. Y el Formularios!nombre!perfiles_autorizados debe tener la etiqueta que indica Roberto.... ya que en mi caso lo he puesto como control de texto.

Lo que conseguimos, es que se bloquean todos aquellos que NO tienen el mismo número de autorizado en el formulario que tenemos abierto.

Probar y si hay alguna duda, por aquí andamos.

Saludos.


Editado por VIMIPAS - 17/Abril/2019 a las 16:58
Gracias
Arriba
ROBERTO_1980 Ver desplegable
Nuevo
Nuevo


Unido: 23/Febrero/2015
Localización: TOLEDO
Estado: Sin conexión
Puntos: 7
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita ROBERTO_1980 Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 17/Abril/2019 a las 18:47
Buenas tardes Mihura,

Disculpa no haya respondido antes.

Vaya que buen planteamiento me acabas de hacer. Pinta bien

Lo probaré en cuanto pueda, y os respondo con el resultado.

Muchísimas gracias de antemano. Mil gracias
Arriba
ROBERTO_1980 Ver desplegable
Nuevo
Nuevo


Unido: 23/Febrero/2015
Localización: TOLEDO
Estado: Sin conexión
Puntos: 7
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita ROBERTO_1980 Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 17/Abril/2019 a las 18:51
Buenas tardes Vimipas:

Muchísimas gracias por tu interesante aportación (da gusto la gente como ayuda en el foro¡¡).

Le echaré un ojo también a tu opción en cuanto pueda y te respondo al respecto.

Muchas gracias de nuevo.

Un saludo.
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable