Usuário com melhor resposta
TextBox - Frame

Pergunta
-
Bom dia, galera estou com um problema já alguns dias com uma planilha...
Antes precisava criar TextBox dentro de uma planilha sem usar UserForms, não consegui, então em ajudaram aqui no fórum. Fiz em um Frame, desenhei os TextBox e ComboBox que preciso. Mas, preciso salvar as informações que forem digitadas nos Text em uma outra planilha do Excel. Ai que esta o problema, preciso digitar o código. Só que não chama os TextBox do frame...
Desde já agradeço.
Att.
Respostas
-
Para descobrir o nome dos controles, faça algo como mostrado:
Dim txt As msforms.TextBox For Each txt In Me.Frame1.Controls Debug.Print txt.Name Next txt
Para atribuir um valor diretamente a um controle, use o código abaixo:
Me.Frame1.Controls("TextBox1").Text = "Avenida Brasil"
Para alterar o nome de um controle:
Me.Frame1.Controls("TextBox1").Name = "txtEndereço"
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
- Marcado como Resposta fcvelho sexta-feira, 2 de maio de 2014 11:38
-
Nesse caso, sugiro que o botão de comando seja do tipo ActiveX. Não crie a partir da caixa de ferramentas do Frame.
No contrário, terá que escrever uma classe para criar um evento, como pode ver aqui: http://stackoverflow.com/questions/566770/assign-on-click-vba-function-to-a-dynamically-created-button-on-excel-userform
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
- Marcado como Resposta fcvelho segunda-feira, 20 de outubro de 2014 15:08
Todas as Respostas
-
Para descobrir o nome dos controles, faça algo como mostrado:
Dim txt As msforms.TextBox For Each txt In Me.Frame1.Controls Debug.Print txt.Name Next txt
Para atribuir um valor diretamente a um controle, use o código abaixo:
Me.Frame1.Controls("TextBox1").Text = "Avenida Brasil"
Para alterar o nome de um controle:
Me.Frame1.Controls("TextBox1").Name = "txtEndereço"
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
- Marcado como Resposta fcvelho sexta-feira, 2 de maio de 2014 11:38
-
-
Nesse caso, sugiro que o botão de comando seja do tipo ActiveX. Não crie a partir da caixa de ferramentas do Frame.
No contrário, terá que escrever uma classe para criar um evento, como pode ver aqui: http://stackoverflow.com/questions/566770/assign-on-click-vba-function-to-a-dynamically-created-button-on-excel-userform
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
- Marcado como Resposta fcvelho segunda-feira, 20 de outubro de 2014 15:08