VBA TextBox

Este artigo demonstrará como usar uma caixa de texto no Excel VBA.

O VBA tem a capacidade de criar formulários com os quais o usuário pode interagir, como formulários de fatura ou detalhes de contato. Caixas de texto são controles que podem ser usados ​​nesses formulários, ou caixas de texto podem ser criadas diretamente no próprio Excel.

Criação de caixas de texto em formulários VBA

Para inserir uma caixa de texto em um formulário VBA, primeiro precisamos criar o formulário. Isso é feito no Editor VBE.

Primeiro, abra o Editor VBE no Excel.

Para inserir um novo formulário de usuário em seu código, selecione o UserForm opção do menu Inserir.

Um novo formulário de usuário aparecerá no Explorador de Projetos e será mostrado na janela de código à direita.

Você pode renomear seu formulário usando o Propriedades caixa. Isso deve aparecer abaixo do seu Explorador de Projetos.

Se estiver visível, pressione F4 ou clique Visualizar, Janela de Propriedades.

Clique no Nome propriedade e renomeie seu formulário.

Agora podemos começar a preencher nosso formulário com controles - o controle de caixa de texto é o controle mais popular junto com o controle de rótulo.

Para preencher o formulário com controles, precisamos ligar a caixa de ferramentas.

No Cardápio, selecione Exibir> Caixa de ferramentas.

Para criar uma caixa de texto em seu formulário, selecione o controle Caixa de texto na caixa de ferramentas.

Arraste uma forma de caixa no formulário com o mouse, mantendo o botão esquerdo pressionado e, a seguir, solte o botão do mouse.

Como esta é a primeira caixa de texto que estamos criando, ela se chamará TextBox1. Assim como no formulário, você pode usar a janela Propriedades para renomear a caixa de texto.

Também pode ser necessário criar um rótulo para sua caixa de texto no formulário. Isso é feito com um controle de rótulo. Você arrasta o formulário da mesma forma que faz para uma Caixa de texto e, em seguida, pode digitar o texto necessário dentro do controle de rótulo, por exemplo: Nome como mostrado abaixo.

Para usar o formulário dentro do código VBA, precisaríamos adicionar um botão de comando ao formulário. Isso é feito selecionando o controle Botão de comando na caixa de ferramentas e arrastando o botão para o formulário.

Você pode então continuar a criar seu formulário usando caixas de texto, rótulos e botões de comando, renomeando-os conforme apropriado.

Escrevendo código por trás de formulários

Depois de criar nosso formulário, precisamos escrever o código VBA para inserir as informações em nosso formulário em nossa planilha do Excel. Este código é denominado CBF (Código por trás dos formulários).

No VBE, clique duas vezes no botão de comando para ir para o código por trás do botão.

Uma sub-rotina para o evento de clique do botão será criada. Podemos digitar nosso código VBA nesta rotina. Por exemplo:

123456 Sub privado cmdOK_Click ()Intervalo ("A1") = Me.txtPrimeiroNomeIntervalo ("A2") = Me.txtSurnameIntervalo ("A3") = Me.txtCellPhoneDescarregue-meEnd Sub

Esta rotina irá colocar os detalhes digitados nas caixas de texto no Excel e, em seguida, fechar o formulário.

Criação de caixas de texto em uma planilha do Excel

Também é possível criar caixas de texto dentro da planilha do Excel. Para fazer isso, você precisa ter a Faixa de Opções do Desenvolvedor ligada.

Observação: se você não vir a faixa de opções do desenvolvedor, precisará habilitá-la.

Na faixa de opções, selecione Desenvolvedor> Inserir> Controles ActiveX> TextBox.

Clique e arraste em sua planilha do Excel para desenhar a caixa de texto na planilha na posição desejada. Solte o botão do mouse para concluir o desenho da caixa de texto.

A caixa de texto estará no Modo Design. Enquanto estiver neste modo, podemos dimensionar a caixa e selecionar as Propriedades da caixa de texto.

Clique no Propriedades para mostrar a janela de propriedades da caixa de texto. Nesta janela, podemos alterar uma variedade de propriedades da caixa de texto, como o nome da caixa, a cor do texto, fundo ou borda, o estilo da borda e a fonte usada para o texto na caixa de texto, por exemplo.

Para usar a caixa de texto diretamente no Excel como a usamos no formulário VBA acima, precisamos de uma maneira de retornar os dados digitados na caixa de texto para a planilha do Excel. Isso pode ser feito adicionando um botão de comando ActiveX à planilha e usando o click_event desse botão de comando para retornar as informações na caixa de texto para a planilha do Excel.

Na faixa de opções, selecione Desenvolvedor> Inserir> Controles ActiveX> Botão de comando para adicionar um botão de comando à sua planilha do Excel. Ative a janela Propriedades e altere o nome do botão, a legenda do botão e o Acelerador do botão como mostrado na imagem abaixo.

Clique duas vezes no botão para ir ao evento de clique do botão VBA e digite o seguinte código:

123 Sub privado cmdOK_Click ()Intervalo ("A1") = Me.txtPrimeiroNomeEnd Sub

Volte para a planilha do Excel, certifique-se de que o Modo de design esteja desativado e digite na caixa de texto criada.

Clique no botão de comando para retornar o texto ao Excel.

wave wave wave wave wave