[ GuTo ] Postado Junho 18, 2007 Denunciar Share Postado Junho 18, 2007 (editado) Fala pessoal, beleza?Estava fazendo para cada combobox uma função que não deixava ele escrever nada, somente selecionar uma das opções.Private Sun cbEstados_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) KeyAscii = 0 End SubPensei: porque sempre fazer para cada combobox isso? Deve haver uma maneira de fazer isso para todos de uma vez.Tentei fazendo "ComboBox_KeyPres(" para ser genérico, mas não rolou (Me baseando naquela UserForm_Activatem, pensei nisso).Desde já agradeço a ajuda.Usando VBA no Excel 2007 Editado Junho 18, 2007 por [ GuTo ] Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 [ GuTo ] Postado Junho 21, 2007 Autor Denunciar Share Postado Junho 21, 2007 _________________OOOOOUTRA COISA..._________________Gostaria de adicionar um evento onClick em todos os controles do tipo CheckBox, para qualquer formulário, para que executem uma ação.Tenho mania de criar coisas genéricas e neste caso é muito bem-vindo isto, pois será feito exatamente o mesmo procedimento em todos os formulários desta "pasta de trabalho" (meuTeste.xls). Seria um tanto quanto contra-produtivo criar a mesma função para cada formulário/CheckBox, sendo que em cada uma apenas iria mudar um parametro somente.Minha idéia é: Criar uma função onde passo o formulário por parametro. Dentro desta, ela varre todo o userForm a procura de controles CheckBoxes e em cada um deles ela adiciona um evento "click" (onClick) no mesmo.Logo, crio uma função CheckBoxClicado(oCheckBox) que recebe como parametro o objeto checkbox que foi clicado e executa a ação que deve ser feita e consegue identificar o form a qual ele pertence e seta um valor no primeiro campo texto do form.Com JAVASCRIPT saberia fazer isso mole mole.Agora com VBA, parece não ter como.Se alguém tiver uma idéia, agradeço.Valeu.Mais ou menos assim queria fazer:Public Sub CheckBoxClicou(oCB As CheckBox) 'Identificar propriedades do checkbox 'Identificar o objeto userForm pai do checkbox End Sub Public Sub habilitaContagem(oFrm As UserForm) Dim x As Control For Each x In oFrm.Controls If TypeName(x) = "CheckBox" Then '################# 'Aqui adicionar o evento _Click ao objeto checkBox que está sendo lido (vamos ler todos do form) '################# End If Next End Sub Private Sub UserForm_Initialize() Call habilitaContagem(Me) End Sub Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
[ GuTo ]
Fala pessoal, beleza?
Estava fazendo para cada combobox uma função que não deixava ele escrever nada, somente selecionar uma das opções.
Pensei: porque sempre fazer para cada combobox isso? Deve haver uma maneira de fazer isso para todos de uma vez.
Tentei fazendo "ComboBox_KeyPres(" para ser genérico, mas não rolou (Me baseando naquela UserForm_Activatem, pensei nisso).
Desde já agradeço a ajuda.
Usando VBA no Excel 2007
Editado por [ GuTo ]Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.