Página 1 de 1

Comandos Salvar e Editar em um único botão

Enviado: 19 Out 2015 às 14:50
por Jackson
Olá galera bom dia!
Tenho 2 comandos funcionando muito bem, em meu formulário. Só que... Eu quero fundir a função desses dois botões em um único botão. Salvar/Editar. Como faze-lo? Obrigado

detalhes:
Comandos do Botão Salvar:
Range("A1048576").Select
Selection.End(xlUp).Select
ActiveCell.Offset(1, 0).Select

N°Cadastro = Caixa_N°Cadastro
data = Caixa_Data
nome = Caixa_Nome
Endereço = Caixa_Endereço
bairro = Caixa_Bairro
ActiveCell = N°Cadastro
ActiveCell.Offset(0, 1).Select
ActiveCell = data
ActiveCell.Offset(0, 1).Select
ActiveCell = nome
ActiveCell.Offset(0, 1).Select
ActiveCell = Endereço
ActiveCell.Offset(0, 1).Select
ActiveCell = bairro
ActiveCell.Offset(0, 1).Select


Comandos do Botão Editar:
totalregistro = Worksheets("Banco de Dados").UsedRange.Rows.Count
For i = 0 To totalregistro
If Caixa_Localizar.ListIndex = i Then
End If
Next

Set plan = Sheets("Banco de Dados")

linha = 3
N°Cadastro = Caixa_N°Cadastro
data = Caixa_Data
nome = Caixa_Nome
Endereço = Caixa_Endereço
bairro = Caixa_Bairro

plan.Select

linha = plan.Range("A:A").Find(Caixa_N°Cadastro).Row

With plan
.Cells(linha, 1) = Caixa_N°Cadastro
.Cells(linha, 2) = Caixa_Data
.Cells(linha, 3) = Caixa_Nome
.Cells(linha, 4) = Caixa_Endereço
.Cells(linha, 5) = Caixa_Bairro
End with

Re: Comandos Salvar e Editar em um único botão

Enviado: 19 Out 2015 às 15:15
por alexandrevba
Boa tarde!!

Eu naõ sei se entendi, mas tente a ideia de usar o comando CALL
Botão
Código: Selecionar todos
Private Sub CommandButton1_Click()
Call Salvar
Call Editar
End Sub
Sub rotina em módulo
Código: Selecionar todos
Sub Salvar()
Range("A1048576").Select
Selection.End(xlUp).Select
ActiveCell.Offset(1, 0).Select

N°Cadastro = Caixa_N°Cadastro
Data = Caixa_Data
nome = Caixa_Nome
Endereço = Caixa_Endereço
bairro = Caixa_Bairro
ActiveCell = N°Cadastro
ActiveCell.Offset(0, 1).Select
ActiveCell = Data
ActiveCell.Offset(0, 1).Select
ActiveCell = nome
ActiveCell.Offset(0, 1).Select
ActiveCell = Endereço
ActiveCell.Offset(0, 1).Select
ActiveCell = bairro
ActiveCell.Offset(0, 1).Select
End Sub
Código: Selecionar todos
Sub Editar()
totalregistro = Worksheets("Banco de Dados").UsedRange.Rows.Count
For i = 0 To totalregistro
If Caixa_Localizar.ListIndex = i Then
End If
Next

Set plan = Sheets("Banco de Dados")

linha = 3
N°Cadastro = Caixa_N°Cadastro
Data = Caixa_Data
nome = Caixa_Nome
Endereço = Caixa_Endereço
bairro = Caixa_Bairro

plan.Select

linha = plan.Range("A:A").Find(Caixa_N°Cadastro).Row

With plan
.Cells(linha, 1) = Caixa_N°Cadastro
.Cells(linha, 2) = Caixa_Data
.Cells(linha, 3) = Caixa_Nome
.Cells(linha, 4) = Caixa_Endereço
.Cells(linha, 5) = Caixa_Bairro
End With

End Sub

Comandos Salvar e Editar em um único botão

Enviado: 19 Out 2015 às 21:47
por Jackson
Olá amigo, obrigado por responder. Testei seu código. Mas não funcionou. Quando Cliquei em Salvar a leitura do código continuou pro Editar. E por fim, não deu nem pra salvar. Muito menos editar algo. o Botão(Salvar) precisa entender que ao Cadastrar algum Dado é apenas pra Salvar. E quando eu busco algum dado através da Caixa Localizar, para Edita-lo. o mesmo Botão(Salvar) Deveria salvar o novo dado por cima do antigo.

Re: Comandos Salvar e Editar em um único botão

Enviado: 19 Out 2015 às 22:19
por Jackson
Desejo remover o botão Editar, deixando apenas o Botão Salvar com a função de (Salvar e Editar). Sem duplicar Cadastro.

Re: Comandos Salvar e Editar em um único botão

Enviado: 20 Out 2015 às 10:01
por Reinaldo
Particularmente não vejo problema na utilização de dois objetos, somente por estética, talvez.
Quanto a seu desejo.
Da maneira que está estruturado, pode utilizar algo +/- assim:
Altere o nome da rotina:
-->Private Sub Botão_Editar_Click() para (por exemplo) -->Private Sub Editar()
-->Private Sub Botão_Salvar_Click() para (por exemplo) -->Private Sub Salvar()
Crie uma nova rotina:
Private Sub Botão_Salvar_Click()
Código: Selecionar todos
Private Sub Botão_Salvar_Click()
If Caixa_Localizar.ListIndex = -1 Then
    Call Salvar
ElseIf Caixa_Localizar.ListIndex = Caixa_N°Cadastro Then
    Call Editar
End If
End Sub

Comandos Salvar e Editar em um único botão

Enviado: 23 Out 2015 às 20:04
por Jackson
Não consegui fazer funcionar... Devo estar fazendo alguma coisa errada. Mas, ouvi seu conselho. Criei 2 botões. um para Salvar e outro para editar.. Obrigado pela ajuda :D