Notifications
Clear all

MsgBox: "Só é possivel Alterar depois que Salvar"

6 Posts
3 Usuários
0 Reactions
1,540 Visualizações
(@albino10)
Posts: 0
New Member
Topic starter
 

Senhores,
Desenvolvi uma planilha em VBA via vídeo aula que está perfeita, composta de botões "Salvar", "Alterar", "Excluir" e "Novo". só que quando eu lanço um registro novo, ao invés de clicar em "Salvar" eu erro e clico no botão "Alterar" aparece a janela "Depurar" com a informação:
Erro em tempo de execução '91':
A variável do objeto ou a variável do bloco 'With' não foi definida
Eu sei que é em função de está alterando algo que ainda não foi lançado, mas como faço para criar um comando de crítica para esse erro operacional?
Um abraço grande e obrigado

 
Postado : 19/12/2015 5:43 pm
(@mprudencio)
Posts: 0
New Member
 

Dentro da sua rotina que altera coloque um if que verifique a existencia do registro, se nao existir retorne a msg registro nao encontrado.

 
Postado : 19/12/2015 6:57 pm
(@albino10)
Posts: 0
New Member
Topic starter
 

Obrigado MPrudencio, pelo rotorno,
O problema é que ainda não encontrei o comando que verifica a existencia de comando, sou leigo em VBA e estou aprendendo via exercícios vídeo aula, estou fazendo várias tentativas, mas se puderme dar uma "mãozinha" vouficarmuito grato.
Obrigado mais uma vez

 
Postado : 19/12/2015 7:19 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Então, sem vermos o que está "fazendo" fica somente sugestões como a do Colega Marcelo, ou outra mais comum e inibir/bloquear botões; por exemplo ao clicar em novo, o botão Alterar pode/deve ficar bloqueado. Onde incluir-la somente acompanhando a execução do código.
Uma maneira de p´roceder e utilizando a depuração/F8

 
Postado : 20/12/2015 7:25 am
(@albino10)
Posts: 0
New Member
Topic starter
 

Valeu Reinaldo, obrigado pelo retorno também
Estou enviando o anexo da minha "façanha" para você e o Marcelo entenderem melhor, não repara não, é porque estou aprendendo pela internet, gostei também das suas sugestões, vê por favor em que pode me ajudar. (se souberem de algum curso grátis de VBA pela internet e puderem me informar).
Um abraço grande

 
Postado : 20/12/2015 12:01 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Como utiliza formas no lugar de controle "Botão", eu sugiro adicionar na rotina "NOVO" a lançar em uma Celula qualquer um numero ou letra indicando que é novo, e nos demais uma condição que verifica e continua conforme a condição, não deverá ser difícil para você uma vez que você já tem nas outras rotinas condição igual.

Agora se quiser, tambem poderá ocultar os Botões utilizando :
ActiveSheet.Shapes("Retângulo de cantos arredondados 2").Visible = False e True para reexibir, mas teria de construir para cada botão.

 
Postado : 20/12/2015 1:16 pm