ON ERROR GOTO
Private Sub Command1_Click()
If Text12.Text = [Ô][Ô] Or Text2.Text = [Ô][Ô] Or Text3.Text = [Ô][Ô] Or Text4.Text = [Ô][Ô] Or Text5.Text = [Ô][Ô] Then
MsgBox [Ô]Preencha Todos os Campos[Ô], vbCritical, [Ô]Aviso![Ô]
Exit Sub
End If
On Error GoTo PrintError
If tabelas.State = adStateOpen Then tabelas.Close
conectiva.Execute [Ô]Insert Into Pneus(placa, PneuD_LDE, PneuD_LDD, PneuT_LDE, PneuT_LDD, ESTEPE_Pneus)[Ô] & _
[Ô]Values([ô][Ô] & lblplaca.Caption & [Ô][ô],[ô][Ô] & Text12.Text & [Ô][ô],[ô][Ô] & Text2.Text & [Ô][ô],[ô][Ô] & Text3.Text & [Ô][ô],[ô][Ô] & Text4.Text & [Ô][ô],[ô][Ô] & Text5.Text & [Ô][ô])[Ô]
PrintError: msgbox [Ô]Verifique pois você esta tentando gravar o mesmo VALOR![Ô]
beta = [Ô]incluÃdas[Ô]
Call box_1
Call limpar
Unload Me
End Sub
esta errada esse comando? ele funciona mas não grava.
If Text12.Text = [Ô][Ô] Or Text2.Text = [Ô][Ô] Or Text3.Text = [Ô][Ô] Or Text4.Text = [Ô][Ô] Or Text5.Text = [Ô][Ô] Then
MsgBox [Ô]Preencha Todos os Campos[Ô], vbCritical, [Ô]Aviso![Ô]
Exit Sub
End If
On Error GoTo PrintError
If tabelas.State = adStateOpen Then tabelas.Close
conectiva.Execute [Ô]Insert Into Pneus(placa, PneuD_LDE, PneuD_LDD, PneuT_LDE, PneuT_LDD, ESTEPE_Pneus)[Ô] & _
[Ô]Values([ô][Ô] & lblplaca.Caption & [Ô][ô],[ô][Ô] & Text12.Text & [Ô][ô],[ô][Ô] & Text2.Text & [Ô][ô],[ô][Ô] & Text3.Text & [Ô][ô],[ô][Ô] & Text4.Text & [Ô][ô],[ô][Ô] & Text5.Text & [Ô][ô])[Ô]
PrintError: msgbox [Ô]Verifique pois você esta tentando gravar o mesmo VALOR![Ô]
beta = [Ô]incluÃdas[Ô]
Call box_1
Call limpar
Unload Me
End Sub
esta errada esse comando? ele funciona mas não grava.
Private Sub Command1_Click()
If Text12.Text = [Ô][Ô] Or Text2.Text = [Ô][Ô] Or Text3.Text = [Ô][Ô] Or Text4.Text = [Ô][Ô] Or Text5.Text = [Ô][Ô] Then
MsgBox [Ô]Preencha Todos os Campos[Ô], vbCritical, [Ô]Aviso![Ô]
Exit Sub
End If
On Error GoTo PrintError
If tabelas.State = adStateOpen Then tabelas.Close
conectiva.Execute [Ô]Insert Into Pneus(placa, PneuD_LDE, PneuD_LDD, PneuT_LDE, PneuT_LDD, ESTEPE_Pneus)[Ô] & _
[Ô]Values([ô][Ô] & lblplaca.Caption & [Ô][ô],[ô][Ô] & Text12.Text & [Ô][ô],[ô][Ô] & Text2.Text & [Ô][ô],[ô][Ô] & Text3.Text & [Ô][ô],[ô][Ô] & Text4.Text & [Ô][ô],[ô][Ô] & Text5.Text & [Ô][ô])[Ô]
[txt-color=#e80000]EXIT SUB[/txt-color]
PrintError:
msgbox [Ô]Verifique pois você esta tentando gravar o mesmo VALOR![Ô]
beta = [Ô]incluÃdas[Ô]
Call box_1
Call limpar
Unload Me
End Sub
If Text12.Text = [Ô][Ô] Or Text2.Text = [Ô][Ô] Or Text3.Text = [Ô][Ô] Or Text4.Text = [Ô][Ô] Or Text5.Text = [Ô][Ô] Then
MsgBox [Ô]Preencha Todos os Campos[Ô], vbCritical, [Ô]Aviso![Ô]
Exit Sub
End If
On Error GoTo PrintError
If tabelas.State = adStateOpen Then tabelas.Close
conectiva.Execute [Ô]Insert Into Pneus(placa, PneuD_LDE, PneuD_LDD, PneuT_LDE, PneuT_LDD, ESTEPE_Pneus)[Ô] & _
[Ô]Values([ô][Ô] & lblplaca.Caption & [Ô][ô],[ô][Ô] & Text12.Text & [Ô][ô],[ô][Ô] & Text2.Text & [Ô][ô],[ô][Ô] & Text3.Text & [Ô][ô],[ô][Ô] & Text4.Text & [Ô][ô],[ô][Ô] & Text5.Text & [Ô][ô])[Ô]
[txt-color=#e80000]EXIT SUB[/txt-color]
PrintError:
msgbox [Ô]Verifique pois você esta tentando gravar o mesmo VALOR![Ô]
beta = [Ô]incluÃdas[Ô]
Call box_1
Call limpar
Unload Me
End Sub
Outra coisa, fique atento quanto ao TIPO DE DADOS de cada coluna.
Como assim tecla?
não tem ne3nhuma condição de que se ocorrer o erro ele não possa executar (box_1)*(Limpar)
Private Sub Command1_Click()
If Text12.Text = [Ô][Ô] Or Text2.Text = [Ô][Ô] Or Text3.Text = [Ô][Ô] Or Text4.Text = [Ô][Ô] Or Text5.Text = [Ô][Ô] Then
MsgBox [Ô]Preencha Todos os Campos[Ô], vbCritical, [Ô]Aviso![Ô]
Exit Sub
End If
On Error GoTo PrintError
If tabelas.State = adStateOpen Then tabelas.Close
conectiva.Execute [Ô]Insert Into Pneus(placa, PneuD_LDE, PneuD_LDD, PneuT_LDE, PneuT_LDD, ESTEPE_Pneus)[Ô] & _
[Ô]Values([ô][Ô] & lblplaca.Caption & [Ô][ô],[ô][Ô] & Text12.Text & [Ô][ô],[ô][Ô] & Text2.Text & [Ô][ô],[ô][Ô] & Text3.Text & [Ô][ô],[ô][Ô] & Text4.Text & [Ô][ô],[ô][Ô] & Text5.Text & [Ô][ô])[Ô]
EXIT SUB
PrintError:
msgbox [Ô]Verifique pois você esta tentando gravar o mesmo VALOR![Ô]
beta = [Ô]incluÃdas[Ô]
Call box_1
Call limpar
Unload Me
End Sub
Todos os campos são do tipo TEXTO?
Outra coisa, estava faltando um ESPAÇO entre a instrução INSERT INTO() e a VALUES().
Segue corrigido:
Outra coisa, estava faltando um ESPAÇO entre a instrução INSERT INTO() e a VALUES().
Segue corrigido:
conectiva.Execute [Ô]Insert Into Pneus(placa, PneuD_LDE, PneuD_LDD, PneuT_LDE, PneuT_LDD, ESTEPE_Pneus) [Ô] & _
[Ô]Values([ô][Ô] & lblplaca.Caption & [Ô][ô],[ô][Ô] & Text12.Text & [Ô][ô],[ô][Ô] & Text2.Text & [Ô][ô],[ô][Ô] & Text3.Text & [Ô][ô],[ô][Ô] & Text4.Text & [Ô][ô],[ô][Ô] & Text5.Text & [Ô][ô])[Ô]
Veja Bem como se tratar erros
o ON ERROR GOTO eu costumo usar como primeira linha ou seja qualquer erro no código ele pula para função que exibe o erro,. a forma usada já foi descrita.
ex:
bom assim se o erro ocorrer ele simplismente pula a função e exibe a mensagem, porém vc deve saber o que está causando o erro em questão e tentar evita-lo.
o ON ERROR GOTO eu costumo usar como primeira linha ou seja qualquer erro no código ele pula para função que exibe o erro,. a forma usada já foi descrita.
ex:
Private Sub Form_Load()
On Error Goto TrataErro
'seu código vai aqui
Exit Sub
TrataErro:
msgbox [Ô]deu erro[Ô]
End Sub
bom assim se o erro ocorrer ele simplismente pula a função e exibe a mensagem, porém vc deve saber o que está causando o erro em questão e tentar evita-lo.
no caso se o cara gravar a mesma coisa da erro teria como criar uma mensagem para isso se o cara for duplicar os dados?
Entenderam???
JAMES,
Nesse caso de não permitir dados duplicados acho melhor vc fazer assim:
Consulte um determinado dado, um novo CPF por ex., verifique se existe o CPF no banco de dados, se existir mostre uma mensagem:
If Existe = True Then
MsGBox [Ô]CPF já existe no banco de dados![Ô], vbExclamation, [Ô]Aviso - CPF[Ô]
TxtCPF.SetFocus
Exit Sub
End IF
O On Error GoTo geralmente é utilizado para erros de tipos de dados, parametros errado, falta de alguma coisa, etc. Bom, pelo menos eu uso pra isso. Não vejo dados duplicados como sendo um erro e sim como uma falta de tratamento de dados.
Nesse caso de não permitir dados duplicados acho melhor vc fazer assim:
Consulte um determinado dado, um novo CPF por ex., verifique se existe o CPF no banco de dados, se existir mostre uma mensagem:
If Existe = True Then
MsGBox [Ô]CPF já existe no banco de dados![Ô], vbExclamation, [Ô]Aviso - CPF[Ô]
TxtCPF.SetFocus
Exit Sub
End IF
O On Error GoTo geralmente é utilizado para erros de tipos de dados, parametros errado, falta de alguma coisa, etc. Bom, pelo menos eu uso pra isso. Não vejo dados duplicados como sendo um erro e sim como uma falta de tratamento de dados.
Fiz desta forma mais ainda me apresenta erros!
If mskCodigo.Text = tabelas!codigo = True Then
MsgBox [Ô]Código já existe no banco de dados![Ô], vbExclamation, [Ô]Aviso - Código[Ô]
txtnome.SetFocus
Else
Call gravar
Exit Sub
End If
Tópico encerrado , respostas não são mais permitidas