PROBLEMA EM FORMULARIO DO ACCESS - VBA

CHUMBREGA 04/10/2012 15:46:53
#411261
Blz galera?
To com uma dificuldade aqui na construção do meu formulário baseado em um banco de dados access. Ainda falta muita coisa, mas o botão gravar, ao ser pressionado, da o seguinte erro: Erro de sintaxe do INSERT INTO. Preciso de ajuda urgente, pois, usarei esse formulário para matrículas aqui no meu trampo. Segue o Código:

[ô]Módulo Conexao
Option Compare Database

Public Comando As String
Public banco As Database
Public dataset As Recordset

Function Conecta()
Set banco = CurrentDb
End Function

Function valida_selecao()
Set dataset = banco.OpenRecordset(Comando, dbOpenDynaset)
End Function

[ô]Evento Click do Botão Gravar
Private Sub cmdGravar_Click()
On Error GoTo Err_cmdGravar_Click
If txtRA <> [Ô][Ô] And txtNOME <> [Ô][Ô] And txtDATA_NASC <> [Ô][Ô] And txtENDERECO <> [Ô][Ô] And txtTEL1 <> [Ô][Ô] Then
GerarRM
Comando = [Ô]Insert into Alunos (RM, RA, NOME, SEXO, DATA_NASC, NATURALIDADE, MAE, RG_MAE, PAI, RG_PAI, CERTIDAO_NOVA, CERTIDAO, LIVRO, FOLHA, EMISSAO, DISTRITO, COMARCA, ESTADO, ENDERECO, BAIRRO, CIDADE, TEL1, TEL2, TEL3, TEL4, ANO, TURNO, ENSINO, SERIE, TURMA, NUM_CH, DATA_MAT, OBS) values ([Ô] & NumCod & [Ô],[ô][Ô] & txtRA & [Ô][ô],[ô][Ô] & txtNOME & [Ô][ô],[ô][Ô] & cmbSEXO & [Ô][ô],[Ô] & txtDATA_NASC & [Ô],[ô][Ô] & cmbNATURALIDADE & [Ô][ô],[ô][Ô] & txtMAE & [Ô][ô],[Ô] & txtRGMAE & [Ô],[ô][Ô] & txtPAI & [Ô][ô],[Ô] & txtRGPAI & [Ô],[Ô] & txtCERTIDAO_NOVA & [Ô],[Ô] & txtNUM_CERTIDAO & [Ô],[ô][Ô] & txtLIVRO & [Ô][ô],[ô][Ô] & txtFOLHA & [Ô][ô],[Ô] & txtEMISSAO & [Ô],[ô][Ô] & cmbDISTRITO & [Ô][ô],[ô][Ô] & cmbCOMARCA & [Ô][ô],[ô][Ô] & cmbESTADO & [Ô][ô],[ô][Ô] & txtENDERECO & [Ô][ô],[ô][Ô] & cmbBAIRRO & [Ô][ô],[ô][Ô] & txtCIDADE & [Ô][ô],[Ô] & txtTEL1 & [Ô],[Ô] & txtTEL2 & [Ô],[Ô] & txtTEL3 & [Ô],[Ô] & txtTEL4 & [Ô],[Ô] & txtANO & [Ô],[ô][Ô] & cmbTURNO & [Ô][ô],[ô][Ô] & txtENSINO & [Ô][ô],[ô][Ô] & cmbSERIE & [Ô][ô],[ô][Ô] & cmbTURMA & [Ô][ô],[Ô] & txtNUM_CH & [Ô],[Ô] & txtDATA_MAT & [Ô],[ô][Ô] & txtOBS & [Ô][ô] )[Ô]
banco.Execute (Comando)
MsgBox ([Ô]Os dados foram cadastrados com sucesso![Ô]), vbInformation + vbOKOnly, [Ô]Cadastro[Ô]
Limpar
Else
MsgBox ([Ô]Necessário informar os dados para efetuar o cadastro![Ô]), vbInformation + vbOKOnly, [Ô]Dados Necessários[Ô]
txtRA.SetFocus
End If

Exit_cmdGravar_Click:
Exit Sub
Err_cmdGravar_Click:
MsgBox Err.Description
Resume Exit_cmdGravar_Click

End Sub
MARCELO.TREZE 04/10/2012 16:14:33
#411268
bom o que eu pude ver é o seguinte veja os campos declarados

Alunos (RM, RA, NOME, SEXO, DATA_NASC, NATURALIDADE, MAE, RG_MAE, PAI, RG_PAI, CERTIDAO_NOVA, CERTIDAO, LIVRO, FOLHA, EMISSAO, DISTRITO, COMARCA, ESTADO, ENDERECO, BAIRRO, CIDADE, TEL1)

ou seja, ode vc vai encaixar estes valores

...[Ô] & txtTEL2 & [Ô],[Ô] & txtTEL3 & [Ô],[Ô] & txtTEL4 & [Ô],[Ô] & txtANO & [Ô],[ô][Ô] & cmbTURNO & [Ô][ô],[ô][Ô] & txtENSINO & [Ô][ô],[ô][Ô] & cmbSERIE & [Ô][ô],[ô][Ô] & cmbTURMA & [Ô][ô],[Ô] & txtNUM_CH & [Ô],[Ô] & txtDATA_MAT & [Ô],[ô][Ô] & txtOBS & [Ô][ô]
CHUMBREGA 04/10/2012 16:24:03
#411270
Blz Marcelo.
Desculpe, mas na hora de colar deve ter escapado.
Está completo e continua dando o erro.
Pode me ajudar?
Valeu.
IRENKO 04/10/2012 16:58:37
#411278
Tenta assim:

Comando = [Ô]Insert into Alunos (RM, RA, NOME, SEXO, DATA_NASC, NATURALIDADE, MAE, RG_MAE, PAI, RG_PAI, CERTIDAO_NOVA, CERTIDAO, LIVRO, FOLHA, EMISSAO, DISTRITO, COMARCA, ESTADO, ENDERECO, BAIRRO, CIDADE, TEL1, TEL2, TEL3, TEL4, ANO, TURNO, ENSINO, SERIE, TURMA, NUM_CH, DATA_MAT, OBS) [Ô]
Comando = Comando & [Ô]VALUES([Ô]
Comando = Comando & [Ô][ô][Ô] & NumCod & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtRA & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtNOME & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & cmbSEXO & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtDATA_NASC & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & cmbNATURALIDADE & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtMAE & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtRGMAE & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtPAI & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtRGPAI & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtCERTIDAO_NOVA & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtNUM_CERTIDAO & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtLIVRO & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtFOLHA & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtEMISSAO & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & cmbDISTRITO & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & cmbCOMARCA & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & cmbESTADO & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & TxtEndereco & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & cmbBAIRRO & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtCIDADE & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtTEL1 & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtTEL2 & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtTEL3 & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtTEL4 & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtANO & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtENSINO & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & cmbSERIE & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & cmbTURMA & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtNUM_CH & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtDATA_MAT & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtOBS & [Ô][ô])[Ô]


se der erro, informe o mesmo.
MARCELO.TREZE 04/10/2012 17:11:17
#411282
este campo DATA_MAT que tipo é?

CHUMBREGA 05/10/2012 09:55:46
#411331
Blz Marcelo?
O campo DATA_MAT é data.
CHUMBREGA 05/10/2012 10:02:06
#411335
Blz Irenko?
Segue anexo a tela printada com o erro.
Valeu pela dica, o erro de sintaxe parou, agora aparece outro...rs...HELP!
CHUMBREGA 05/10/2012 10:23:23
#411344
Anexei o Banco de Dados para facilitar a visualização.
Existem botões que ainda não tem função, pois, estou no início do projeto.
Agradeço, desde já, a ajuda de todos.
Abraços.
IRENKO 05/10/2012 14:30:12
#411381
Tente isso novamente:

Private Sub cmdGravar_Click()
On Error GoTo Err_cmdGravar_Click

If txtRA <> [Ô][Ô] And txtNOME <> [Ô][Ô] And txtDATA_NASC <> [Ô][Ô] And txtENDERECO <> [Ô][Ô] And txtTEL1 <> [Ô][Ô] Then
GerarRM
Comando = [Ô]Insert into Alunos ([RM], [RA], [NOME], [SEXO], [DATA_NASC], [NATURALIDADE], [MAE, RG_MAE], [PAI], [RG_PAI], [CERTIDAO_NOVA], [CERTIDAO], [LIVRO], [FOLHA], [EMISSAO], [DISTRITO], [COMARCA], [ESTADO], [ENDERECO], [BAIRRO], [CIDADE], [TEL1], [TEL2], [TEL3], [TEL4], [ANO], [TURNO], [ENSINO], [SERIE], [TURMA], [NUM_CH], [DATA_MAT], [OBS]) [Ô]
Comando = Comando & [Ô]VALUES([Ô]
Comando = Comando & [Ô][ô][Ô] & NumCod & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtRA & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtNOME & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & cmbSEXO & [Ô][ô],[Ô]
Comando = Comando & IIf(Not IsDate(txtDATA_NASC), [Ô]Null[Ô], [Ô][ô][Ô] & Format(txtDATA_NASC, [Ô]dd/mm/yyyy[Ô]) & [Ô][ô][Ô]) & [Ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & cmbNATURALIDADE & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtMAE & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtRGMAE & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtPAI & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtRGPAI & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtCertidao_Nova & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtNUM_CERTIDAO & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtLIVRO & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtFOLHA & [Ô][ô],[Ô]
Comando = Comando & IIf(Not IsDate(txtEMISSAO), [Ô]Null[Ô], [Ô][ô][Ô] & Format(txtEMISSAO, [Ô]dd/mm/yyyy[Ô]) & [Ô][ô][Ô]) & [Ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & cmbDISTRITO & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & cmbCOMARCA & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & cmbESTADO & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtENDERECO & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & cmbBAIRRO & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtCIDADE & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtTEL1 & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtTEL2 & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtTEL3 & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtTEL4 & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtANO & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtENSINO & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & cmbSERIE & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & cmbTURMA & [Ô][ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtNUM_CH & [Ô][ô],[Ô]
Comando = Comando & IIf(Not IsDate(txtDATA_MAT), [Ô]Null[Ô], [Ô][ô][Ô] & Format(txtDATA_MAT, [Ô]dd/mm/yyyy[Ô]) & [Ô][ô][Ô]) & [Ô],[Ô]
Comando = Comando & [Ô][ô][Ô] & txtOBS & [Ô][ô])[Ô]
banco.Execute (Comando)
Debug.Print Comando
MsgBox ([Ô]Os dados foram cadastrados com sucesso![Ô]), vbInformation + vbOKOnly, [Ô]Cadastro[Ô]
Limpar
Else
MsgBox ([Ô]Necessário informar os dados para efetuar o cadastro![Ô]), vbInformation + vbOKOnly, [Ô]Dados Necessários[Ô]
txtRA.SetFocus
End If

Exit_cmdGravar_Click:
Exit Sub
Err_cmdGravar_Click:
MsgBox Err.Description
Resume Exit_cmdGravar_Click

End Sub
CHUMBREGA 08/10/2012 10:34:53
#411493
Bom dia Irenko.
Usei seu código e deu o seguinte erro anexado neste coment.
Gostei das modificações, mas ainda não funcionou.
Enviei o Banco de dados em um coment acima, o que deve ajudar a encontrar o erro e me ajudar.
Grato desde já.
IRENKO 08/10/2012 11:29:48
#411503
Vc vai ter q verificar os tipos de campo de sua tabela um a um com os campo de entrada do Form, creio q o problema esteja ai.
Página 1 de 3 [26 registro(s)]
Tópico encerrado , respostas não são mais permitidas