Saberexcel - o site de quem precisa Aprender Macros MS Excel VBA
Esse exemplo de procedimentos do Aplicativo Microsoft Excel VBA, contém userforms, textboxes, comboboxes, labels, para inserção de dados em um cadastro simples na folha de planilha, com opção de corrigir e salvar alguns dados via userform.
Observe os procedimentos abaixo:
Private Sub cbxNome_Change()
On Error Resume Next
'observe que usamos a WorksheetFuncionVlookup para localização do código na folha de planilha
txtEndereco = WorksheetFunction.VLookup(cbxNome.Text, Range("A2:K50"), 2, False)
txtCidade = WorksheetFunction.VLookup(cbxNome.Text, Range("A2:K50"), 3, False)
txtBairro = WorksheetFunction.VLookup(cbxNome.Text, Range("A2:K50"), 4, False)
txtEstado = WorksheetFunction.VLookup(cbxNome.Text, Range("A2:K50"), 5, False)
txtCep = WorksheetFunction.VLookup(cbxNome.Text, Range("A2:K50"), 6, False)
txtTelefone = WorksheetFunction.VLookup(cbxNome.Text, Range("A2:K50"), 7, False)
txtCelular = WorksheetFunction.VLookup(cbxNome.Text, Range("A2:K50"), 8, False)
txtCpf = WorksheetFunction.VLookup(cbxNome.Text, Range("A2:K50"), 9, False)
txtObs = WorksheetFunction.VLookup(cbxNome.Text, Range("A2:K50"), 10, False)
txtCodigo = WorksheetFunction.VLookup(cbxNome.Text, Range("A2:K50"), 11, False)
End Sub
Private Sub cmdAtualizar_Click()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Cadastra") 'Cadastra ("range dinamica nomeada - Expande com a digitação")
Linha = txtCodigo + 1
With ws
.Cells(Linha, 2) = txtEndereco
.Cells(Linha, 3) = txtCidade
.Cells(Linha, 4) = txtBairro
.Cells(Linha, 5) = txtEstado
.Cells(Linha, 6) = txtCep
.Cells(Linha, 7) = txtTelefone
.Cells(Linha, 8) = txtCelular
.Cells(Linha, 9) = txtCpf
.Cells(Linha, 10) = txtObs
.Cells(Linha, 1) = cbxNome.Text 'se mudar essa linha de código par ínicio só vai afetar a col(A)
End With
cbxNome.RowSource = "Cadastra" 'Cadastra ("range dinamica nomeada - expande com a digitação")
cbxNome.ListIndex = txtCodigo - 1
MsgBox ("Dados Atualizados com Sucesso!"), vbInformation, "Saberexcel - o site das macros"
End Sub
Private Sub cmdFechar_Click()
Unload Me
End Sub
Private Sub UserForm_Initialize()
cbxNome.RowSource = "Cadastra"
cbxNome.ListIndex = 0
End Sub
Aprenda tudo sobre planilhas do Aplicativo Microsoft Excel VBA(Visual Basic Application), sozinho, com baixo custo, praticando com os produtos didáticos Saberexcel
Baixe o exemplo de planilha com os procedimentos de cadastro acima
vba cadastro cadastrando na propria planilha (27.74 kB)