Descricao: |
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 sobre o Aplicativo Microsoft Excel VBA - com Saberexcel
|