Ir ao conteúdo

Nicodemos Filho

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Reputação

0
  1. Bom dia! Estou criando um programa em VBA EXCEL de cadastro de clientes (Agricultores), e estou com problemas em meu botão de editar. Não estou conseguindo criar uma rotina para torná-lo executável. Por exemplo quero entrar pelo meu formulário, editar o cadastro já existente, e depois salva-ló sem que ele repita o registro. Vou mandar meu projeto para analise e solução do problema. desde já agradeço. Private Sub botao_editar_Click() 'verificar se o usuario selecionou algum nome If caixa_localizar.ListIndex = -1 Then MsgBox "Selecione o nome para editar!", vbExclamation Exit Sub End If linha = caixa_localizar.ListIndex + 2 resposta = MsgBox("Deseja editar cadastro?", vbYesNo) If resposta = vbYes Then Worksheets("GarantiaSafra").Select Cells(linha, 1) = caixa_nome Cells(linha, 2) = caixa_apelido Cells(linha, 3) = caixa_cpf Cells(linha, 4) = caixa_rg Cells(linha, 5) = caixa_datadenasc Cells(linha, 6) = caixa_endereço Cells(linha, 7) = caixa_nº Cells(linha, 8) = caixa_cep Cells(linha, 9) = caixa_cidade Cells(linha, 10) = caixa_estado Cells(linha, 11) = caixa_bairro Cells(linha, 12) = caixa_contatos Cells(linha, 13) = caixa_localidade Cells(linha, 14) = caixa_programas Exit Sub End If MsgBox "Dados Atualizados!", vbInformation End Sub Private Sub botao_excluir_Click() 'verificar se usuário selecionou nome If caixa_localizar.ListIndex = -1 Then MsgBox "Selecione um nome antes de excluir!", vbExclamation Exit Sub End If 'variável que a linha o nome está linha = caixa_localizar.ListIndex + 2 'Worksheets("GarantiaSafra").Rows(linha).Delete resposta = MsgBox("Deseja realmente excluir esse cadastro?", vbYesNo) If resposta = vbYes Then Worksheets("GarantiaSafra").Rows(linha).Delete 'comando para excluir sem deletar a linha 'Worksheets("GarantiaSafra").Cells(linha, 15) = "Excluido" MsgBox "Cadastro excluido com sucesso.", vbInformation Exit Sub End If 'codigo para limpar as caixas caixa_nome = "" caixa_apelido = "" caixa_bairro = "" caixa_cep = "" caixa_cidade = "" caixa_contatos = "" caixa_cpf = "" caixa_datadenasc = "" caixa_endereço = "" caixa_estado = "" caixa_localidade = "" caixa_nº = "" caixa_rg = "" caixa_programas = "" caixa_localizar = "" 'comando para colocar o foco caixa_nome.SetFocus 'Comamdo pra salvar automatico ActiveWorkbook.Save End Sub Private Sub botao_fechar_Click() Unload CADASTROAGRI LOGIN.Show End Sub Private Sub botao_imprimir_Click() Worksheets("GarantiaSafra").Select Unload CADASTROAGRI Application.Visible = True ActiveWindow.SelectedSheets.PrintPreview Application.Visible = False CADASTROAGRI.Show End Sub Private Sub Botao_novo_Click() caixa_nome = "" caixa_apelido = "" caixa_bairro = "" caixa_cep = "" caixa_cidade = "" caixa_contatos = "" caixa_cpf = "" caixa_datadenasc = "" caixa_endereço = "" caixa_estado = "" caixa_localidade = "" caixa_nº = "" caixa_rg = "" caixa_localizar = "" caixa_programas = "" 'codigo para enviar o cursor para caixa nome caixa_nome.SetFocus ActiveWorkbook.Save End Sub Private Sub botao_salvar_Click() 'Comando pra validação de campos If ValidacaoCampos = False Then MsgBox "Atenção! Campos sem preencimentos.", vbCritical Exit Sub End If totalregistro = Worksheets("GarantiaSafra").UsedRange.Rows.Count + 1 Worksheets("GarantiaSafra").Select 'Aqui começa a gravação dos dados Cells(totalregistro, 1) = caixa_nome Cells(totalregistro, 2) = caixa_apelido Cells(totalregistro, 3) = caixa_cpf Cells(totalregistro, 4) = caixa_rg Cells(totalregistro, 5) = caixa_datadenasc Cells(totalregistro, 6) = caixa_endereço Cells(totalregistro, 7) = caixa_nº Cells(totalregistro, 8) = caixa_cep Cells(totalregistro, 9) = caixa_cidade Cells(totalregistro, 10) = caixa_estado Cells(totalregistro, 11) = caixa_bairro Cells(totalregistro, 12) = caixa_contatos Cells(totalregistro, 13) = caixa_localidade Cells(totalregistro, 14) = caixa_programas MsgBox "Cadastrado efetuado com sucesso.", vbInformation 'codigo para limpar as caixas caixa_nome = "" caixa_apelido = "" caixa_bairro = "" caixa_cep = "" caixa_cidade = "" caixa_contatos = "" caixa_cpf = "" caixa_datadenasc = "" caixa_endereço = "" caixa_estado = "" caixa_localidade = "" caixa_nº = "" caixa_rg = "" caixa_programas = "" 'codigo para enviar o cursor para caixa nome caixa_nome.SetFocus 'comando para classificar em ordem alfabética ORDENAR 'salvamento automatico ActiveWorkbook.Save 'codigo para preencher a caixa localizar totaldelinhas = Worksheets("GarantiaSafra").UsedRange.Rows.Count caixa_localizar.RowSource = "GarantiaSafra!a2:a" & totaldelinhas End Sub Private Sub caixa_apelido_Change() caixa_apelido = UCase(caixa_apelido) End Sub Private Sub caixa_bairro_Change() caixa_bairro = UCase(caixa_bairro) End Sub 'comando para organizar o cep Private Sub caixa_cep_Change() If Len(Me.caixa_cep.Text) = 2 Then Me.caixa_cep.Text = Me.caixa_cep.Text & "." Me.caixa_cep.SelStart = 4 ElseIf Len(Me.caixa_cep.Text) = 6 Then Me.caixa_cep.Text = Me.caixa_cep.Text & "-" Me.caixa_cep.SelStart = 7 ElseIf Len(Me.caixa_cep.Text) = 10 Then Me.caixa_cidade.SetFocus End If End Sub Private Sub caixa_cidade_Change() caixa_cidade = UCase(caixa_cidade) End Sub 'comando para organizar o cpf Private Sub caixa_cpf_Change() If Len(Me.caixa_cpf.Text) = 3 Then Me.caixa_cpf.Text = Me.caixa_cpf.Text & "." Me.caixa_cpf.SelStart = 6 ElseIf Len(Me.caixa_cpf.Text) = 7 Then Me.caixa_cpf.Text = Me.caixa_cpf.Text & "." Me.caixa_cpf.SelStart = 9 ElseIf Len(Me.caixa_cpf.Text) = 11 Then Me.caixa_cpf.Text = Me.caixa_cpf.Text & "-" ElseIf Len(Me.caixa_cpf.Text) = 14 Then Me.caixa_rg.SetFocus End If End Sub 'comando para organizar a data Private Sub caixa_datadenasc_Change() If Len(Me.caixa_datadenasc.Text) = 2 Then Me.caixa_datadenasc.Text = Me.caixa_datadenasc.Text & "/" Me.caixa_datadenasc.SelStart = 4 ElseIf Len(Me.caixa_datadenasc.Text) = 5 Then Me.caixa_datadenasc.Text = Me.caixa_datadenasc.Text & "/" Me.caixa_datadenasc.SelStart = 7 ElseIf Len(Me.caixa_datadenasc.Text) = 10 Then Me.caixa_endereço.SetFocus End If End Sub Private Sub caixa_endereço_Change() caixa_endereço = UCase(caixa_endereço) End Sub Private Sub caixa_localidade_Change() caixa_localidade = UCase(caixa_localidade) End Sub Private Sub caixa_localizar_Click() Worksheets("GarantiaSafra").Select totalregistro = Worksheets("GarantiaSafra").UsedRange.Rows.Count For i = 0 To totalregistro If caixa_localizar.ListIndex = i Then 'preencher as caixas caixa_nome = Cells(i + 2, 1) caixa_apelido = Cells(i + 2, 2) caixa_cpf = Cells(i + 2, 3) caixa_rg = Cells(i + 2, 4) caixa_datadenasc = Cells(i + 2, 5) caixa_endereço = Cells(i + 2, 6) caixa_nº = Cells(i + 2, 7) caixa_cep = Cells(i + 2, 8) caixa_cidade = Cells(i + 2, 9) caixa_estado = Cells(i + 2, 10) caixa_bairro = Cells(i + 2, 11) caixa_contatos = Cells(i + 2, 12) caixa_localidade = Cells(i + 2, 13) caixa_programas = Cells(i + 2, 14) Exit Sub End If Next End Sub 'comando para o nº Private Sub caixa_nº_Change() If Len(Me.caixa_nº.Text) = 4 Then Me.caixa_cep.SetFocus End If End Sub Private Sub caixa_nome_Change() caixa_nome = UCase(caixa_nome) End Sub Private Sub caixa_programas_Change() caixa_programas = UCase(caixa_programas) End Sub Private Sub Image1_Click() End Sub 'codigo para preencher a caixa estado Private Sub UserForm_Initialize() caixa_estado.AddItem "MG" caixa_estado.AddItem "CE" caixa_estado.AddItem "PE" caixa_estado.AddItem "PB" caixa_estado.AddItem "RN" caixa_estado.AddItem "BA" caixa_estado.AddItem "MA" caixa_estado.AddItem "AL" caixa_estado.AddItem "SE" caixa_estado.AddItem "PI" caixa_estado.AddItem "RJ" caixa_estado.AddItem "SP" caixa_estado.AddItem "GO" caixa_estado.AddItem "MT" caixa_estado.AddItem "MS" caixa_estado.AddItem "RS" caixa_estado.AddItem "SC" caixa_estado.AddItem "PR" caixa_estado.AddItem "AM" caixa_estado.AddItem "RR" caixa_estado.AddItem "RO" caixa_estado.AddItem "AC" caixa_estado.AddItem "DF" caixa_estado.AddItem "ES" caixa_estado.AddItem "TO" caixa_estado.AddItem "PA" 'codigo para preencher a caixa localizar totaldelinhas = Worksheets("GarantiaSafra").UsedRange.Rows.Count caixa_localizar.RowSource = "GarantiaSafra!a2:a" & totaldelinhas End Sub 'Código para valicação de campos Function ValidacaoCampos() As Boolean Dim valores(14) As Variant Dim linha As Integer ValidacaoCampos = True With Me valores(0) = .caixa_nome.Value valores(1) = .caixa_apelido.Value valores(2) = .caixa_cpf.Value valores(3) = .caixa_rg.Value valores(4) = .caixa_datadenasc.Value valores(5) = .caixa_endereço.Value valores(6) = .caixa_nº.Value valores(7) = .caixa_cep.Value valores(8) = .caixa_cidade.Value valores(9) = .caixa_estado.Value valores(10) = .caixa_bairro.Value valores(11) = .caixa_contatos.Value valores(12) = .caixa_localidade.Value valores(13) = .caixa_programas.Value End With For linha = 0 To UBound(valores) - 1 If valores(linha) = "" Then ValidacaoCampos = False Exit For End If Next End Function

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!