Notifications
Clear all

Botão "Anterior" ou "Voltar" em um Formulário

4 Posts
2 Usuários
0 Reactions
1,219 Visualizações
(@gamboaisrael)
Posts: 68
Trusted Member
Topic starter
 

Olá, companheiros.

Estou tentando criar um botão com a simples função de voltar à etapa anterior do formulário. Estou trabalhando com um formulário condicionado basicamente a botões de sim ou não. Tenho uma pergunta em um rótulo e dois botões: Sim e Não. Caso o usuário clique em Sim, abre-se uma msgbox com uma informação específica para essa questão. Caso o usuário clique no botão Não a pergunta presente no Rótulo muda para a segunda pergunta e o esquema se repete. Caso ele clique em Não novamente, mostra-se a terceira pergunta no rótulo e por ai vai. A minha questão é: Como criar um botão que volte à pergunta anterior (Volte ao caption do Rótulo anterior e volte a msgbox do botão sim anterior)?

Exemplo: O usuário está na terceira pergunta que é: Possui zoneamento? Se ele clicar na opção sim, abre-se uma msgbox com a mensagem informativa: "Obrigatório". Caso ele clique em Não, abre-se a quarta pergunta: Empreendimento irrigado? Se ele clica no botão sim, abre-se uma msgbox com a mensagem informativa: "Facultativo", caso ele clique em Não, mostra-se a quinta pergunta no rótulo e por ai vai. Como fazer pra se ele clicar no botão voltar na quarta pergunta, ele voltar o rótulo para a terceira pergunta "Possui zoneamento?" e volte também a msgbox pro botão Sim: "Obrigatório".

Espero ter sido claro. Qualquer coisa estou à disposição.

Obrigado pela ajuda!

 
Postado : 11/09/2012 5:53 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Saudações,

Quando você fala Formulario, você está falando de um UserForm ou controles na propria planilha?

Você pode disponibilizar um exemplo do que você já tem, assim podemos desenvolver os código.

Abraço

 
Postado : 11/09/2012 10:26 am
(@gamboaisrael)
Posts: 68
Trusted Member
Topic starter
 

Falo de um UserForm. Infelizmente estou fora do PC agora, mas a noite posso disponibilizar o código. Obrigado!

 
Postado : 11/09/2012 10:50 am
(@gamboaisrael)
Posts: 68
Trusted Member
Topic starter
 

Boa tarde, companheiros.

Devido ao fato de que a demanda aqui era "pra ontem", fiz uma bagunça e dei um jeito.

Agradeço a resposta do Mitsueda.

Quanto ao código, acabou ficando assim:

Private Sub cmdPlan1_Click() ' Ambiente da Planilha "Plan1"

	UserForm1.Show

End Sub


Private Sub cmdFechar_Click() 'Ambiente do UserForm1

	UserForm1.Hide

End Sub

Private Sub cmdZarcNao_Click()
    
    	UserForm1.Hide
    	UserForm2.Show
    
End Sub


Private Sub cmdZarcSim_Click()
    	UserForm1.Hide
    	UserForm2.Hide
    
    	Dim Msg, Style, Title, Help, Ctxt, Response, MyString
		Msg = "Obrigatório Proagro Mais, de acordo com o MCR 16-10-3"
		Style = vbOKCancel + vbInformation 
		Title = "Assistente de enquadramento"    
		Response = MsgBox(Msg, Style, Title)
		If Response = vbOK Then    
    		MyString = "Ok"    
    
		Else    
    		MyString = "Cancel"    
    		UserForm1.Show
    
End If



End Sub

Private Sub cmdPlantioIrrigadoNao_Click() 'Ambiente do UserForm2

	UserForm2.Hide
	UserForm3.Show


End Sub

Private Sub cmdPlantioIrrigadoSim_Click()

    	UserForm2.Hide
    
    	Dim Msg, Style, Title, Help, Ctxt, Response, MyString
		Msg = "Obrigatório Proagro Mais, de acordo com o MCR 16-10-4-a"    ' Define a mensagem.
		Style = vbOKCancel + vbInformation ' Define os botões.
		Title = "Assistente de enquadramento"    ' Define o título.
		Response = MsgBox(Msg, Style, Title)
		If Response = vbOK Then    ' O usuário escolheu Sim.
    		MyString = "Ok"    ' Executa alguma ação.
    
		Else    ' O usuário escolheu Não.
    		MyString = "Não"    ' Executa alguma ação.
    		UserForm2.Show
    
End If




End Sub

	Private Sub cmdVoltarForm2_Click()

	UserForm2.Hide
	UserForm1.Show

End Sub

Private Sub cmdConsorcioNao_Click() 'Ambiente do UserForm3
  
    	UserForm3.Hide
    	UserForm4.Show

End Sub

Private Sub cmdConsorcioSim_Click()

    	UserForm3.Hide
    
    	Dim Msg, Style, Title, Help, Ctxt, Response, MyString
		Msg = "Obrigatório Proagro Mais, de acordo com o MCR 16-10-4-b"    ' Define a mensagem.
		Style = vbOKCancel + vbInformation ' Define os botões.
		Title = "Assistente de enquadramento"    ' Define o título.
		Response = MsgBox(Msg, Style, Title)
		If Response = vbOK Then    ' O usuário escolheu Sim.
    		MyString = "Ok"    ' Executa alguma ação.
    
		Else    ' O usuário escolheu Não.
    		MyString = "Cancel"    ' Executa alguma ação.
    		UserForm3.Show
    
		End If

End Sub

Private Sub cmdConsorcioVoltar_Click()

	UserForm3.Hide
	UserForm2.Show

End Sub

No final das contas não conseguir fazer o botão "Voltar" retornar ao mesmo UserForm, apenas alterando o rótulo e o conteúdo do botão "Sim". Devido à demanda, optei por criar inúmeros UserForms e colocar o botão "Voltar" pra ficar navegando entre eles.

Agradeço a ajuda e solicito à moderação que marque este tópico como resolvido.

Saudações

 
Postado : 11/09/2012 1:10 pm