Buscar

Aprenda a inserir dados no Excel com o VBA

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 13 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 13 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 13 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Aprenda a inserir dados no Excel com o VBA
Veja nesse artigo como inserir dados de Formulário no Excel com VBA.
 0 
 
 
 Gostei (1)
 (0)
CADASTRO DE CLIENTES
Abra a Guia Desenvolvedor em seguida Abra o editor do Visual Basic.
Na aba Propriedades no campo Caption digite:
CADASTRO DE CLIENTES
Crie Rótulos e caixas de textos para os campos:
Nome:: TXTnome
Endereço:: TXTEnd
Telefone:: TXTTel
e um botão para ação:: btnEnviar
O formulário deverá ficar como a seguir:
No Visual Basic digite:
Sub cadastro()
Sheets("cadastro").Select
UserForm1.Show
End Sub
Digite o código abaixo dando duplo clique no btnenviar.
Private Sub btnenviar_Click()
Sheets("cadastro").Select
'posiciona o cursor na planilha cadastro
ActiveCell.Offset(1, 0).Range("a1").Select
'cursor posicionado uma celula para baixo ( primeira em branco)
End Sub.
Para os campos receberem os valores digitados.
A planilha aqui esta com o cursor posicionado na célula nomeada. Ela deve receber a informação digitada no controle conhecido como txtnome (caixa de texto do formulário)
Veja como fica:
ActiveCell.Value = Me.txtnome.Text
'a celula atual ter o seguinte valor
Com esta linha a célula atual será capaz de receber o valor inserido no controle.
Agora vamos posicionar o cursor na célula a direita , utilizando o método offset.
ActiveCell.Offset(0, 1).Activate
'posiciona o cursor uma célula para a direita
Note que o cursor receberá o conteúdo de um controle do formulário, desta vez o controle txtend.
Crie o mesmo procedimento para txtend.
ActiveCell.Value = Me.txtend.Text
'a celula atual ter o seguinte valor
ActiveCell.Offset(0, 1).Activate
'posiciona o cursor uma célula para a direita
 
Crie o mesmo procedimento para txttel.
 
ActiveCell.Value = Me.txttel.Text
'a celula atual ter o seguinte valor
 
ActiveCell.Offset(0, 1).Activate
'posiciona o cursor uma célula para a direita
Nesta etapa seu código deverá estar assim:
Insira o código abaixo, para que o seu cursor posicione na célula abaixo e limpe o formulário para nova digitação:
ActiveCell.Offset(1, -3).Activate
'posiciona o cursor uma linha abaixo e 3 colunas a esquerda.
 
Me.txtend = ""
Me.txtnome = ""
Me.txttel = ""
Me.txtnome = SetFocus
O código completo desta aplicação é:
Rode a aplicação para testar.
Espero ter ajudado
Veremos-nos em Breve com mais Dicas de uso VBA
 
Quelen Assis
Formação em Tecnologia em Informatica pela UNICARIOCA , Certificado SQL/BI Microsoft Experience , • Certificada pela Microsoft em Developing Rich Experiences with Microsoft .NET Framework 3.0 and Visual Studio 2005 e Developing Ri [...]
O que você achou deste post?
 Gostei (1)
(0)
Poste seu comentário
Marcos Estevam De Sousa
Faltou em minha opinião por parte do autor uma didatica mais passo a passo. Logo no inicio voce fica perdido pois não sabe se abre a primeira rotina em excel ou editor vba. Faltou tambem o resultado da compilação e os possiveis erros que podemos encontrar.
[há +1 ano] - Responder
 
Amigoelite
Testei a aplicação e sempre esta dando erro em tempo de execução 9.
 
aguardo.
amigoelite.
[há +1 ano] - Responder
 
Aloncio
Bom dia Marcos
 
primeiro veja na planilha se a aba 1 vc colocou o nome de "cadastro",pois caso não, vai dar erro ,
na primeira rotina o programa pede ao excel que selecione a aba renomeada como "cadastro" e depois mostre a tela de cadastro.
 
Private Sub Cadastro()
Sheets("Cadastro").Select
userform1.Show
End Sub
 
é so observar bem os detalhes do tutorial que dá certo
 
assim fiz uma pequena correção no codigo do btnenviar_click()
 
Private Sub btnenviar_Click()
Sheets("cadastro").Select
'posiciona o cursor na planilha cadastro
ActiveCell.Offset(1, 0).Range("a1").Select
'cursor posicionado uma celula para baixo ( primeira em branco)
ActiveCell.Value = Me.Txtnome.Text
'a celula atual ter o seguinte valor
ActiveCell.Offset(0, 1).Activate
'posiciona o cursor uma célula para a direita
ActiveCell.Value = Me.Txtend.Text
'a celula atual ter o seguinte valor
 
ActiveCell.Offset(0, 1).Activate
'posiciona o cursor uma célula para a direita
ActiveCell.Value = Me.TxtTel.Text
'a celula atual ter o seguinte valor
 
ActiveCell.Offset(0, 1).Activate
'posiciona o cursor uma célula para a direita
 
'ActiveCell.Offset(1, -3).Activate                 '<<essa linha causa um erro faz pular uma linha  
ActiveCell.Offset(0, -3).Activate                    '<< nessa linha troquei o 1 por 0, corrigindo o erro acima
 
'posiciona o cursor uma linha abaixo e 3 colunas a esquerda.
 
Me.Txtend = ""
Me.Txtnome = ""
Me.TxtTel = ""
Me.Txtnome = SetFocus
End Sub
[há +1 ano] - Responder
 
Eves Santa Cruz
Prezados Amigos, 
veja achei um exemplo muito bacana sobre cadastro no site www.microsoftexcel.com.br --- muito simplificado e objetivo,
com boa performance.
'- - - - - - - - - -
Esses procedimentos do Aplicativo Microsoft Excel VBA, cadastra dados em determinada folha de Planilha, por meio de objetos textboxes. 
' - - - - - - - - - - - - - - - - 
Private Sub cmdLANCAMENTO_Click()
Dim vPALAVRA As Long
vPALAVRA = Plan1.Range("A65536").End(xlUp).Row + 1 'localiza a última linha +1 (célula vazia)
'poderá criar um verifica inconsistência para todos os ítens abaixo.
If txtNOME = "" Then
MsgBox ("Preencha os dados corretamente")
Exit Sub
End If
'observe a simplicidade do código, localiza as ultimas linha/colunas e grava dados
'Plan1 - é o nome da folha de código da folha de planilha, se o usuário mudar o nome da folha de planilha na aba,
'não ocorrerá erro, porque referenciamos o nome da folha de código da folha de planilha.
Plan1.Range("a" & vPALAVRA).Value = Me.txtNOME.Text
Plan1.Range("b" & vPALAVRA).Value = Me.txtENDERECO.Text
Plan1.Range("c" & vPALAVRA).Value = Me.txtBAIRRO.Text
Plan1.Range("d" & vPALAVRA).Value = Me.txtCIDADE.Text
Plan1.Range("e" & vPALAVRA).Value = Me.cboESTADO.Text
Plan1.Range("f" & vPALAVRA).Value = Me.txtCEP.Text
Plan1.Range("g" & vPALAVRA).Value = Me.txtTELEFONE.Text
Plan1.Range("h" & vPALAVRA).Value = Me.txtOBSERVACAO.Text
MsgBox ("Dados inseridos com sucesso"),vbInformation, "http://www.microsoftexcel.com.br"
lblCONTADOR.Caption = vPALAVRA 'mostrando o próximo codigo cliente, cada gravação
'limpando as TextBox depois de ter gravado os dados na folha de planilha
Me.txtNOME.Value = ""
Me.txtENDERECO.Value = ""
Me.txtBAIRRO.Value = ""
Me.txtCIDADE.Value = ""
Me.txtCIDADE.Value = ""
Me.cboESTADO.Value = ""
Me.txtCEP.Value = ""
Me.txtTELEFONE.Value = ""
Me.txtOBSERVACAO.Value = ""
Me.txtNOME.SetFocus 'retornando o cursor para o TextBox (txtNOME)
End Sub
' - - - - - - - - - - - - - - - -
'carregar a combobox com os estados ao inicializar, isto é ao abrir o formulário.
Private Sub UserForm_Initialize()
vPALAVRA = Plan1.Range("A65536").End(xlUp).Row + 1 ' numerar o proximo cadastro
lblCONTADOR.Caption = vPALAVRA
cboESTADO.List = Array("AC", "AL", "AP", "AM", "BA", "CE", "DF", "GO", "MA", "MG", "MT", _
"MS", "PA", "PB", "PR", "PE", "PI", "RJ", "RS", "RN", "RD", "SC", "SP", "SE", "TO")
End Sub
' - - - - - - - - - - - - - - - -
'fechar o formulário na conclusão das tarefas
Private Sub cmbSAIR_Click()
Unload Me
End Sub
' - - - - - - - - - - - - - - - -
'esse procedimento determina a localização de abertura do formulário na folha de planilha
Private Sub UserForm_Activate()
With frmCADASTRO
.Top = Application.Top + 149
.Left = Application.Left + 30
End With
End Sub
' - - - - - - - - - - - - - - - -
Aprenda tudo sobre planilhas do Aplicativo Microsoft Excel VBA(Visual Basic Application), sozinho, com baixo custo, praticando com os produtos didáticos Escola Saberexcel VBA Estudos® - Treinamentos com Macros, Fórmulas e Funções.
' - - - - - - - - - - - - - - - -
[há +1 ano] - Responder
 
Leandro Martins De Mirada
Caros, tenho um codigo que é bem simples e didatico.
Private Sub CMD1_Click()
'==============================================================================================================================================================================================================
'validando entradas
'=============================================================================================================================================================================================================='nome
If IsNumeric(nome) Then
MsgBox "Campo não aceita Números", vbInformation
nome.SetFocus
End If
If nome = "" Then
MsgBox "Informe o nome", vbCritical
nome.SetFocus
Exit Sub
End If
'Setor
If IsNumeric(setor) Then
MsgBox "Campo não aceita Números", vbInformation
nome.SetFocus
End If
If setor = "" Then
MsgBox "Informe o Setor", vbCritical
setor.SetFocus
Exit Sub
End If
'Endereço
If endereco = "" Then
MsgBox "Informe o Endereco", vbCritical
endereco.SetFocus
Exit Sub
End If
'Bairro
If bairro = "" Then
MsgBox "Informe o Bairro", vbCritical
bairro.SetFocus
Exit Sub
End If
'Cidade
If cidade = "" Then
MsgBox "Informe o Cidade", vbCritical
cidade.SetFocus
Exit Sub
End If
'Cep
If Not IsNumeric(cep) Then
MsgBox "Campo não aceita letra, apenas números", vbInformation
nome.SetFocus
End If
If cep = "" Then
MsgBox "Informe o Cep", vbCritical
cep.SetFocus
Exit Sub
End If
'telefone
If Not IsNumeric(telefone) Then
MsgBox "Campo não aceita letra, apenas números", vbInformation
telefone.SetFocus
End If
If telefone = "" Then
MsgBox "Informe o telefone", vbCritical
telefone.SetFocus
Exit Sub
End If
'contato
If contato = "" Then
MsgBox "Informe o Contato", vbCritical
contato.SetFocus
Exit Sub
End If
'fax
If Not IsNumeric(fax) Then
MsgBox "Campo não aceita letra, apenas números", vbInformation
fax.SetFocus
End If
If fax = "" Then
MsgBox "Informe o Fax", vbCritical
fax.SetFocus
Exit Sub
End If
'e-mail
If email = "" Then
MsgBox "Informe o E-mail", vbCritical
email.SetFocus
Exit Sub
End If
'observações
If obrservacoes = "" Then
MsgBox "Informe as Observações", vbCritical
obrservacoes.SetFocus
Exit Sub
End If
'========================================================================================================================================================================================================
'Procura linha
'========================================================================================================================================================================================================
If Range("A2") = "" Then
lin = 2
Else
Range("A1").Select
Selection.End(xlDown).Select
lin = ActiveCell.Row + 1
End If
'========================================================================================================================================================================================================
'Cadastro
'========================================================================================================================================================================================================
Cells(lin, 1) = nome
Cells(lin, 2) = setor
Cells(lin, 3) = endereco
Cells(lin, 4) = bairro
Cells(lin, 5) = cidade
Cells(lin, 6) = uf
Cells(lin, 7) = cep
Cells(lin, 8) = telefone
Cells(lin, 9) = contato
Cells(lin, 10) = fax
Cells(lin, 11) = email
Cells(lin, 12) = obrservacoes
MsgBox "Cadastro Realizado Com Sucesso!", vbInformation, "SUCESSO"
Unload Me
CADASTRO.Show
End Sub
'===========================================================================================================================================================================================================
'limpa tela
'===========================================================================================================================================================================================================
Private Sub CMD2_Click()
Unload Me
CADASTRO.Show
End Sub
'============================================================================================================================================================================================================
'Fecha form
'============================================================================================================================================================================================================
Private Sub CMD3_Click()
Unload Me
End Sub
Leia mais em: Aprenda a inserir dados no Excel com o VBA http://www.devmedia.com.br/aprenda-a-inserir-dados-no-excel-com-o-vba/11761#ixzz2qTj7y3gi

Continue navegando