Tags:

Como criar Formulários no Excel (Vba) - UserForm

Por Jorge Sampaio quinta-feira, fevereiro 14
Os formulários do Excel são uma excelente ferramenta para a introdução de dados numa planilha.

Para construir um formulário iremos utilizar a linguagem Visual Basic for Applications (VBA).

O nosso formulário de exemplo é bastante "simplista", tornando o tempo de aprendizagem mais curto. Para o ajudar a compreender este tutorial, adicionamos uma vídeo aula no final do artigo.

Dica: Também é possível criar um formulário para introdução de dados, usando a ferramenta "Base" do LibreOffice. Dessa forma, poderá criar uma base de dados gratuita. Para mais detalhes consulte o seguinte tutorial: Criar base de dados (Exemplo: formulário cadastro de clientes).


Formulários no Excel - Preparação

Antes de iniciar a criação do seu formulário em Excel, é necessário ativar o separador "Programador" (ou Desenvolvedor), e permitir a execução de Macros. Para isso, execute os seguintes procedimentos:

1. Ativar o separador Programador (ou Desenvolvedor)

Aceda ao Menu Ficheiro do Excel- Opções - clique no separador "Personalizar Friso" - e selecione a opção "Programador".

2. Executar Macros no Excel

Aceda ao Separador "Programador" e clique no botão "Segurança Macros". Selecione a opção "Ativar todas as Macros".


Criar um Formulário no Excel

Agora poderá dar início à criação do seu formulário em Excel. Em primeiro lugar, comece por definir os dados que pretende adicionar na sua planilha (por exemplo: Nome, Morada, etc.).

No nosso exemplo, usaremos apenas 3 campos, que serão distribuídos na horizontal (células A1, B1 e C1).

Construir Formulário em VBA (UserForm)

Clique no separador "Programador" e pressione o botão "Visual Basic" (teclas de atalho ALT+F11). Clique com o botão direito do rato na janela Project Explorer e selecione "Insert" - "UserForm".

Como criar Formulários no Excel

Caso a janela Project Explorer não esteja ativa, pressione as teclas de atalho CTRL+R.

Como criar Formulários no Excel (Vba) - UserForm
Para construir o formulário, você deverá utilizar os elementos presentes na ToolBox. No nosso exemplo, iremos utilizar apenas 3 elementos:

Label: Texto Descritivo
TextBox: Usada para recolher dados introduzidos
CommandButton: Usado para gerar um evento (Fechar Janela, Introduzir os dados, etc.).

Para alterar o texto exibido nos CommandButton e Labels, altere o parâmetro "caption" da janela esquerda (Project Explorer).

Descubra como criar uma pesquisa para o seu formulário no seguinte tutorial: Como criar uma pesquisa em VBA.


Adicionar Código VBA (Visual Basic for Applications)

Para gerar um evento será necessário adicionar o código VBA no elemento necessário, neste caso, nos "Command Button" do seu Formulário.

Os nomes que atribuímos aos botões (Inserir - Sair) servem apenas como exemplo, você poderá adicionar o nome que achar mais conveniente.

Para adicionar o código VBA, clique duas vezes no botão que pretende editar para abrir a janela do Código.

Criar um botão de Sair:

Vamos começar pelo botão mais simples de criar, o botão "Sair" do seu formulário. Clique duas vezes no botão "Sair" e digite o seguinte código:

Private Sub CommandButton1_Click()
Unload Me
End Sub

Criar o botão "Inserir"

O botão "Inserir" irá gravar os dados do formulário, na sua planilha. Para adicionar o código, basta clicar duas vezes no botão Inserir e digitar o seguinte código:


Private Sub CommandButton1_Click()

Dim iRow As Long
Dim ws As Worksheet
Set ws = Worksheets("Folha1")

iRow = ws.Cells.Find(What:="*", SearchOrder:=xlRows, _
    SearchDirection:=xlPrevious, LookIn:=xlValues).Row + 1

'copia os dados para as celulas
ws.Cells(iRow, 1).Value = Me.TextBox1.Value
ws.Cells(iRow, 2).Value = Me.TextBox2.Value


'Limpa os campos TextBox para inserir novos dados
Me.TextBox1.Value = ""
Me.TextBox2.Value = ""
Me.TextBox1.SetFocus

End Sub


Clique no botão "Play" (tecla de atalho F5) para verificar o resultado final.

Criar o Botão "Guardar":


Private Sub CommandButton1_Click()

ActiveWorkbook.Save

End Sub


Executar o formulário automaticamente

Por fim, é necessário adicionar um código "extra" para que o seu formulário seja executado sempre que executa a sua planilha. Para isso, volte ao menu "Programador" - Visual Basic.

Na janela esquerda (Project Explorer) clique no objeto "EsteLivro" (ou o nome que deu ao seu arquivo). Na janela de código digite o seguinte trecho:


Como criar Formulários no Excel

Private Sub Workbook_Open()
    UserForm1.Show
End Sub


Guarde o seu formulário e verifique o resultado final.



Caso pretenda descobrir mais funcionalidades do Excel, consulte os seguintes artigos:

Outros artigos Recomendados:


Post Tags:

safepctuga
Precisa de ajuda?

Não encontrou a resposta que necessitava? Envie as suas perguntas para a nossa redação. Queremos dar resposta às vossas dúvidas, e ajudar outros usuários que enfrentam o mesmo problema. Para entrar em contacto preencha o seguinte formulário.

3 comentários to ''Como criar Formulários no Excel (Vba) - UserForm"

ADD COMMENT
  1. Muito bom este post, tirou várias dúvidas minhas. Como se diz pegou na vêia.

    ResponderEliminar
  2. Gostei muito deste post. Será que você não daria uma aula como no vídeo de introdução ao VBA? Seria muito interessante, tipo: explicando sua logica, como funciona as funções, etc...
    Show de bola cara...

    ResponderEliminar
  3. Adorei!! Me ajudou d+++

    ResponderEliminar