Criação de formulários do usuário no Excel 2003 faz a entrada de dados de uma brisa. Os formulários que são utilizados para coletar e verificar informações de um usuário proteger a sua planilha de mudanças desnecessárias e exclusões que os usuários podem fazer se tiverem acesso à lista de dados reais sobre a planilha correspondente. Toda forma que você criar irá solicitar e obter informações diferentes, mas uma vez que você aprender a Visual Basic for Applications (VBA ) de código para que você pode construir e personalizar qualquer forma no Excel 2003. Coisas que você precisa
Microsoft Office Excel 2003
Show Mais instruções
1
No menu "Ferramentas" , aponte para "Macro" e , em seguida, clique em " Editor do Visual Basic "ou pressione" ALT "+" F11 "para abrir o editor do Visual Basic. Abra o menu "Principal" , selecione "Inserir" e clique em " Formulário de Usuário" para criar um novo objeto UserForm.
2
Coloque um controle TextBox e um controle Label para cada coluna na planilha para o formar clicando duas vezes no controle ou arrastando-os da caixa de ferramentas para o formulário. Substitua qualquer combinação TextBox e Label com um controle de caixa de combinação , se você deseja apresentar ao usuário uma lista de opções para selecionar a partir para o campo , em vez de uma caixa de texto .
3
Atribuir o correto campo propriedades de nome para o texto e caixas de combinação , digitando os nomes dos campos do banco de dados correspondentes na linha Nome da propriedade em sua janela propriedade correspondente. Alterar propriedades legenda para um nome de exibição amigável ao mesmo tempo .
4
Clique duas vezes no " CommandButton " ferramenta de controle quatro vezes para adicionar o primeiro, anterior , próximo e último botões para seu formulário . Digite seu nome na linha de Propriedade Caption em suas janelas de propriedade correspondentes .
5
Arraste um controle TextBox para o formulário entre os controles de Anterior e Próximo . Digite " NúmeroLinhas " em sua linha Nome da propriedade. Digite " 2 " na linha de texto de propriedade .
6
Clique ou arraste três controles CommandButton adicionais para o formulário. Digite em "Salvar ", "Cancelar" e "Adicionar" para os seus correspondentes linhas nome da propriedade. Definir a propriedade Enabled para False no Salvar e Cancelar botões de comando quando você digita as propriedades de nome .
7
organizar os controles e rótulos, em seguida, ajuste o tamanho do formulário de usuário com o clique e método de arrastar até ter certeza de que a forma é fácil de usar e agradável ao usuário.
8
Adicione todas as caixas de texto adicionais e definir suas propriedades , conforme necessário para a funcionalidade e apelo adicional. uma caixa de título do formulário é recomendado .
9
Digite essa rotina GetData na janela de código do VBA substituindo os nomes das colunas (propriedades de nome de campo) e os tipos de dados com o CustomerId amostra , CustomerName , Cidade , Estado, CEP e nomes das colunas DateAdded :
" Private Sub GetData ()
Dim r As Long
Se IsNumeric ( RowNumber.Text ) Então
r = CLng ( RowNumber.Text )
Else
ClearData
MsgBox " número da linha ilegal"
Exit Sub End
Se
Se r> , 1 e R < = LastRow Então
CustomerId.Text = FormatNumber ( Cells (r, 1) , 0)
CustomerName.Text = Cells (r, 2)
City.Text = Cells ( r, 3)
State.Text = Cells (r, 4)
Zip.Text = Cells (r , 5)
DateAdded.Text = FormatDateTime ( Cells (r , 6), vbShortDate )
DisableSave
ElseIf r = 1 Então
ClearData
Else
ClearData
MsgBox " número de linha inválido "
End If End Sub
"
10
Digite essa rotina ClearData no VBA . janela de código Substitua os nomes das colunas (propriedades nome do campo) com o CustomerId amostra , CustomerName , Cidade, Estado, CEP e DateAdded nomes das colunas :
" Private Sub ClearData ()
CustomerId.Text = ""
CustomerName.Text = ""
City.Text = ""
State.Text = " AK "
Zip.Text = " "
DateAdded.Text = ""
End Sub "
11
Digite este comando constante LastRow na janela de código do VBA:
"Const LastRow = 20 "
12
Digite essa rotina DisableSave na janela de código do VBA:
"Sub DisableSave privado ( )
CommandButton5.Enabled = False
CommandButton6.Enabled = False
End Sub "
13
Digite essa rotina nomeado RowNumber_Change na janela de código VBA:
" Private Sub RowNumber_Change ()
GetData
End Sub "
14
Definir o comando de eventos apropriado , digitando este na janela de código do VBA:
" NúmeroLinhas . Text = "2" "
15
Defina os Anterior e Próximo códigos botões digitando este na janela de código do VBA:
" Private Sub CommandButton2_Click ()
Dim r As Long
Se IsNumeric ( RowNumber.Text ) Então
r = CLng ( RowNumber.Text )
r = r ? 1
Se r> 1 e R < = LastRow Então
RowNumber.Text = FormatNumber (r, 0)
End If End
Se
End Sub "
16
Digite este código LastRow variável constante na janela de código do VBA:
" Sub UserForm_Initialize privado ( )
GetData
End Sub "
17
Digite este FindLastRow () rotina na janela de código do VBA:
" FindLastRow Private Function ()
r As Long Dim
r = 2
Do While r < 65536 e Len (Cells ( r, 1). texto) > 0
r = r + 1
loop
FindLastRow = r
Function End "
18
Digite esses eventos UserForm_Initialize na janela de código do VBA:
" LastRow = FindLastRow
Private Sub CommandButton4_Click ()
LastRow = FindLastRow - 1
RowNumber.Text = FormatNumber ( LastRow , 0)
End Sub "
19
Digite a rotina PutData na janela de código mudando os nomes das colunas de amostra e locais para combinar com sua planilha:
" Private Sub PutData ()
Dim r As Long
Se IsNumeric ( RowNumber.Text ) Então
r = CLng ( RowNumber.Text )
Else
MsgBox " linha ilegal número "
Exit Sub End
Se
Se r> 1 e R < LastRow Então
células
(r, 1) = CustomerId . texto
Cells (r, 2) = CustomerName.Text
Cells (r , 3) = City.Text
Cells (r , 4) = State.Text
Cells (r , 5) = Zip.Text
Cells (r, 6) = DateAdded.Text
DisableSave
Else
MsgBox " número de linha inválido "
End If End Sub
"
20
Digite essa rotina de dados Adicionando na janela de código :
" Private Sub CommandButton7_Click ()
RowNumber.Text = FormatNumber ( LastRow , 0)
End Sub "
21
Digite essa rotina validando dados na janela de código :
" Private Sub CustomerId_KeyPress (ByVal KeyAscii As MSForms.ReturnInteger )
Se KeyAscii < Asc ( " 0 ") Or KeyAscii > Asc ( " 9 ") Então
KeyAscii = 0
End If End Sub
"
22
Digite esse código de evento Exit na janela de código do VBA:
" Sub DateAdded_Exit privado ( ByVal Cancel As MSForms.ReturnBoolean )
If Not IsDate ( DateAdded.Text ) Então
DateAdded.BackColor = & HFF &
MsgBox " data ilegal valor "
Cancelar = True
Else
DateAdded.BackColor = & H80000005
End If End Sub
" < br >
23
Digite esses detalhes da lista de caixa de combinação na janela de código :
" Sub AddStates particulares ()
State.AddItem " AK "
Estado . AddItem "AL"
State.AddItem "AR "
State.AddItem " AZ "
End Sub "
24
Digite isso Exibindo o formulário de utilizador comandos na janela de código do VBA:
" Public Sub ShowForm ()
UserForm1.Show vbModal
End Sub "
25
Comente e texto suas instruções de forma e de codificação , selecionando " Executar" no "Main Visual Basic for Applications menu . "