Botão de opção ou caixa de seleção? como resolver?


#1

Pessoal, tenho um problema ainda sem solução!
Tenho uma Planilha onde precisarei marcar e desmarcar caixas de SIM e NÃO para perguntas.
A questão é que preciso que ao marcar uma caixa (resposta) a outra seja desmarcada e vice versa.

Perguntei sobre qual a melhor forma de fazer isso em fóruns e obtive várias respostas, inclusive com ComboBox e algumas Planilhas exemplo, mas nenhuma ainda conseguiu resolver definitivamente essa questão.

Montei uma Planilha exemplo que vou colocar aqui abaixo o link para vocês verem:
https://drive.google.com/open?id=1gp8Ma5QORQPbLeqGVm9XTKxdquNnEjh2

Vou colocar também aqui as respostas que obtive nos fóruns como proposta de solução:
http://gurudoexcel.com/forum/download/file.php?id=11688
http://gurudoexcel.com/forum/download/file.php?id=11690


#2

Veja se te ajuda colega.

EXEMPLO-CAIXA DE SELEÇÃO-BOTÃO DE OPÇÃO.xlsx (58,5 KB)


#3

xlarruda,

Sinceramente não consegui entender que mudança você fez na Planilha Modelo que eu disponibilizei.
Para mim continuou do mesmo jeito!

Tanto os botões de opção não estão funcionando (se eu clico em um botão da segunda pergunta, ele desmarca o botão da primeira pergunta) quanto as caixas de seleção também estão do mesmo jeito (uma não desmarca a outra e ainda está dando a possibilidade de marcar duas caixas ao mesmo tempo).

Desculpa, mas para mim ainda continua o problema!


#4

Descupe, postei o arquivo errado:

Segue

EXEMPLO-CAIXA DE SELEÇÃO-BOTÃO DE OPÇÃO.xlsm (155,1 KB)


#5

xlarruda,

Rapaz, até deu certo sim! Ficou show… Terminei o código e todas as caixas ficaram funcionando perfeitamente no arquivo que você me enviou, porém, quando eu coloquei o código na minha Planilha original não funcionou.
Fica dando um erro.
Olha só o print que eu bati para você ver.:point_down:

Me ajuda a resolver isso, por favor!
Te agradeço.


#6

Colega @maruchoa, o VBE está entendendo o nome “Anamneses” como uma variável e está retornando erro por causa o Option Explicit lá em cima. O que obrigaria você a declará-la.

Troque todos os With Anamneses por With Plan1

ou pode ser também dessa forma:

With Sheets("Anamneses")

vou dar o exemplo do Checkbox1 que ficaria assim:

Private Sub CheckBox1_Click()
     With Plan1
          .CheckBox2.Vlaue = Not CheckBox1.Value
     End With
End Sub

Ou pode ser assim:

  Private Sub CheckBox1_Click()
         With Sheets("Anamneses")
              .CheckBox2.Vlaue = Not CheckBox1.Value
         End With
    End Sub

#7

xlarruda,
Você foi sensacional…
Agora sim este problema se solucionou.
Muito obrigado mesmo!


#8

Agora, para concluir tudo, ainda faltou só um último detalhe que eu esqueci de te falar, xlarruda!

Preciso que todas caixas de seleção marcadas também se marquem automaticamente em outra ABA da Planilha. Vou explicar melhor!

Suponhamos que eu tenho uma Planilha com duas ABAS… ABA1 e ABA2.
Se na ABA2 eu colocar em uma célula o símbolo de “=” e clicar em uma célula na ABA1 dando um ENTER, aquela célula da ABA2 irá ter o conteúdo igual aquela que eu selecionei na ABA1, ok? Procedimento simples!

Acontece que eu quero fazer o mesmo com esse formulário clicando nas caixas de seleção!
Tenho duas ABAS na Planilha contendo esse mesmo formulário com essas perguntas e gostaria que ao selecionar o SIM ou o NÃO no formulário da ABA1, o SIM ou o NÃO desta mesma pergunta no formulário da ABA2 fosse automaticamente marcado também, ou seja, uma cópia, entende?

Como eu faço isso com essas Caixas de Seleção, meu amigo?


#9

Bem nesse caso faça assim:

Suponhamos que sua segunda aba (a que quer espelhar os dados da primeira) se chame “planilha2”.

e supomos também que o primeiro "sim e não " (que devem ser de TEM PLANO DE SAÚDE) da segunda planilha são as 1 e 2 respectivamente…

Então a checkbox1 da planilha Anamneses ficaria assim:

Private Sub CheckBox1_Click()
         With Sheets("Anamneses")
              .CheckBox2.Vlaue = Not CheckBox1.Value
         End With

         With Sheets("Planilha2")
              .CheckBox2.Vlaue = Not CheckBox1.Value
         End With

    End Sub

e o resto você já sabe… tem que fazer isso com todos.

Veja o exemplo em anexo:

EXEMPLO-CAIXA DE SELEÇÃO-BOTÃO DE OPÇÃO.xlsm (170,0 KB)

Abrç!