Notifications
Clear all

Bloquear OptionButton

5 Posts
2 Usuários
0 Reactions
703 Visualizações
(@jfbdsil1)
Posts: 3
New Member
Topic starter
 

Bom dia,

Pessoal estou fazendo um programa de votação de funcionário do mês.

Tenho um form onde tenho vários OptionButton com os nome dos funcionários.
Ai a pessoa clica no OptionButton correspondente a que ele quer votar e vota.
Porém não posso deixar ele votar nele mesmo, estou querendo bloquear o OptionButton dele na hora que ele for votar.

Tenho uma variável que pego o usuário ativo para fazer a regra. Fiz a regra pelo iniciliazar do Form, porém isso só funciona a primeira vez que o form é inicializado.
Se outra pessoa vai votar, somente o OptionButton anterior fica bloqueado, o do usuário ativo não fica.

Estou tentando fazer essa regra dentro do módulo para acessar em qualquer formulário, porém quando chamo essa função dá o erro
Erro de Compilção:
Sub ou Function não definida

Tem alguma forma de eu chamar uma função em outro form ou módulo que bloquei o OptionButton do usuário ativo?

 
Postado : 20/04/2017 6:09 am
leandroxtr
(@leandroxtr)
Posts: 447
Reputable Member
 

Bom dia!
Após a votação de determinado usuário, você pode mandar o Form sair e entrar de novo para que atualize. Ou seja, toda vez que o usuário clicar em "Salvar votação" no final da rotina voce coloca form.hide e em seguida form.show.
Não sei se isso é adaptável para você, mas deu muito certo em algumas planilhas que utilizo em formulário.

Abraços!

Se te ajudou, não se esqueça de dar um like na resposta e marcar o tópico como finalizado.

Abraços!
Leandro Cordeiro

 
Postado : 20/04/2017 6:19 am
(@jfbdsil1)
Posts: 3
New Member
Topic starter
 

Bom dia Leandroxtr,

Fiz isso, porém não deu certo.
Tenho um botão que chama o formVotação, depois que a pessoa vota esse form é fechado e volta para a tela principal, que outro usuário clica novamente no botão para se logar e chama o form de votação, ai ele já não passa pela inicialização do form.

att

 
Postado : 20/04/2017 6:23 am
leandroxtr
(@leandroxtr)
Posts: 447
Reputable Member
 

Entendi...
Tente colocar um exemplo da planilha para que possamos tentar ajudá-lo melhor!
Não parece ser coisa muito complexa.
att

Se te ajudou, não se esqueça de dar um like na resposta e marcar o tópico como finalizado.

Abraços!
Leandro Cordeiro

 
Postado : 20/04/2017 6:42 am
(@jfbdsil1)
Posts: 3
New Member
Topic starter
 

Segue a lógica que estou usando.
Na inicialização do form verifico o usuário ativo e bloqueio o button dele,
A primeira vez dá certo, porém ao clicar novamente para outro usuário logar, a rotina já não passa aqui.

Queria fazer essa lógica em algum outro lugar, como no módulo porém não consigo chamar ela.

Segue uma imagem de onde passa as minhas telas.

Private Sub UserForm_Initialize()
    Dim hwnd As Long
    hwnd = FindWindowA(vbNullString, Me.Caption)
    SetWindowLongA hwnd, -16, GetWindowLongA(hwnd, -16) And &HFFF7FFFF
    
    
    'Aqui vou verificar qual o usuário esta ativo e bloquear o nome dele para ele não votar nele
    
   ' If inicializaFormVotos = True Then
    
    If pegaNomeQuemEstaVotando = "Funcionario1" Then
        
        optFuncionário1.Locked = True
          
        
    Else
 
Postado : 20/04/2017 7:25 am