Contente
UserForms, também chamados de "caixas de diálogo", são janelas gráficas que permitem aos usuários preencher informações em campos e inserir tais dados em planilhas do Excel. Um UserForm é embutido no Excel e executado quando abre-se um arquivo Excel, normalmente através de uma macro. Devido aos UserForms tomarem vantagem da linguagem Visual Basic, podem ser customizados para garantir que os dados informados em seus campos sejam completos e válidos antes de transferi-los para uma planilha do Excel.
Instruções
UserForms do Excel são uma excelente maneira de garantir a entrada de dados válidos e limpos (binary data image by rgbspace from Fotolia.com)-
Abra o Excel e crie uma nova planilha, clicando no item "Arquivo" e selecionando "Novo". Salve o arquivo como "planilha_atualizada.xls".
-
Mantenha a planilha aberta e inicie o editor Visual Basic, pressionando "Alt"+"F11". Crie um novo UserForm, clicando no menu "Inserir" e selecionando "UserForm". Nomeie o UserForm para "transferForm", alterando o atributo "Name" no menu de propriedades. Mude o atributo "Caption" para "transferForm".
-
Adicione uma caixa de texto ao formulário selecionando-a na caixa de ferramentas, arrastando-a e soltando-a no formulário. Nomeie a caixa de texto como "transferInput", na janela de propriedades. Se a caixa de ferramentas não estiver aberta, vá em "Exibir" e em "Caixa de ferramentas".
-
Adicione um botão de atualização ao formulário. Selecione um "Botão de comando" da caixa de ferramentas, arraste-o e solte-o no formulário. Nomeie o botão de comando para "transferButton" na janela de propriedades e mude o atributo "Caption" para "Atualizar Planilha".
-
Adicione ao formulário um botão para fechar. Selecione um segundo "Botão de comando" da caixa de ferramentas, arraste-o e solte-o no formulário. Nomeie o botão de comando como "closeButton" na janela de propriedades e mude o atributo "Caption" para "Fechar Formulário".
-
Abra o editor Visual Basic, clicando duas vezes no botão "transferButton" (botão de atualização). Insira o código a seguir na função "transferButton_click()", que irá transferir qualquer informação preenchida na caixa de texto para a planilha "planilha_atualizada.xls" quando o usuário clicar no botão. Feche o editor de código.
Private Sub transferButton_Click() Dim transferWorksheet as Worksheet Set transferWorksheet = Worksheets(“Sheet1”) transferWorksheet.Cells(1,1).Value = Me.transferInput.Value End Sub
-
Reabra o editor de código Visual Basic clicando duas vezes no botão "closeButton" (botão de fechar). Insira o seguinte código na função "closeButton_Click()", que fechará o formulário quando o usuário clicar no botão. Feche o editor de código.
Private Sub closeButton_Click() Unload Me End Sub
-
Execute o código do formulário clicando em "Executar" e então "Executar Sub/UserForm". Preencha o campo de texto e clique no botão "transferButton". Verifique se os dados foram corretamente transferidos para a primeira célula na planilha. Salve e feche o UserForm.
-
Utilize um procedimento de evento do Excel para abrir o UserForm quando um usuário abrir a planilha. Abra o "Project Explorer" e clique duas vezes na janela de código "EstaPasta_de_trabalho". Insira a macro abaixo, que irá abrir o formulário quando a planilha for aberta. Salve e feche o Visual Basic.
Private Sub Workbook_Open() transferForm.Show End Sub
-
Reabra o arquivo "planilha_atualizada.xls". O formulário irá abrir. Digite algum texto no campo e clique no botão "transferButton". O texto preenchido no formulário será transferido para a primeira célula da planilha.
Como transferir dados de um UserForm para uma planilha
Dicas
- Para abrir a janela de propriedades ou o Project Explorer, selecione os itens do menu "Exibir", no editor Visual Basic.
- Para redimensionar os controles adicionados no formulário, utilize os pequenos quadrados que aparecem quando o controle está selecionado.
- Tente adicionar alguma validação ao formulário para impedir que usuários insiram dados inválidos.
Aviso
- As macros não irão executar em todas versões do Excel.
- Algumas configurações de segurança do Excel não permitirão que macros sejam executadas.
- O suporte ao editor Visual Basic foi removido no Excel 2008, para Mac.
O que você precisa
- Microsoft Excel com um editor Visual Basic