ERRO 3265

ALANTB 29/10/2013 14:37:28
#430498
Olá, estou com um sistema e vb6 e access2007 que no evento lostfocus do campo txtCod me exibe o erro: [Ô]run-time error [ô]3265[ô]: o item não pode ser encontrado na coleção correspondente ao nome ou ao ordinal solicitado[Ô].
Já conferi nomes de campos no form e na tabela tá normal, mas ao inserir o código no form ele carrega os primeiros campos e para em um campo especifico: no form txtdataCad e na tabela DataCad . Já experimentei alterar os nomes desses campos, mas o resultado é o mesmo erro 3265. Alguma ideia pessoal?????
OMAR2011 29/10/2013 16:16:30
#430505
Coloque seu código para o pessoal
olhar e postar uma resposta.
Valeu.
ALANTB 29/10/2013 17:29:12
#430507
OMAR2011, segue o código:

Dim vInclusao As Boolean
------------------------------------------------------------
Private Sub cmdLimpar_Click()
LimpaForm
End Sub
-----------------------------------------------------------
Private Sub cmdSair_Click()
Unload Me
End Sub
-------------------------------------------------------------------
Private Sub Command1_Click()
frmSelPlaca.Show
End Sub
-------------------------------------------------------------------
Private Sub Form_Load()
Call Conectar
End Sub
--------------------------------------------------------------------
Private Sub txtCod_LostFocus()
Dim ComandoSQL As String
If rs.State = 1 Then rs.Close
If txtCod = [Ô][Ô] Then Exit Sub
If Not IsNumeric(txtCod.Text) Then Exit Sub

ComandoSQL = [Ô]SELECT * FROM tbPatrimonio [Ô] & _
[Ô]WHERE tbPatrimonio.CodPatrimonio=[Ô] & txtCod.Text
rs.Open ComandoSQL, conn, adOpenStatic
If rs.EOF And rs.BOF Then
[ô]Se o recordset está vazio, não retornou registro com esse código:
[ô]Identifica a operacao como Inclusão:
vInclusao = True
Else
Me.txtPlacaID.Text = rs!PlacaID
Me.txtCodModelo.Text = rs!codModelo
Me.txtCodSetor.Text = rs!codSetor
Me.txtDataCad.Text = rs!DataCad
Me.txtCodSituacao.Text = rs!codSituacao
Me.txtObs.Text = rs!Obs

vInclusao = False

End If
txtPlacaID.Enabled = False
Me.txtCod.Enabled = False
rs.Close
End Sub
---------------------------------------------------------------------------------------------------------
Private Sub txtCodModelo_Change()
Dim rs As New ADODB.Recordset

If txtCodModelo.Text = [Ô][Ô] Then Exit Sub
Set rs = conn.Execute([Ô]SELECT tbModelo.codModelo, tbModelo.descModelo, tbEquipNome.descEquipamento, tbMarca.desMarca [Ô] & _
[Ô]FROM tbMarca INNER JOIN (tbEquipNome INNER JOIN tbModelo ON tbEquipNome.codNomeEquip = tbModelo.codNomeEquip) ON tbMarca.codMarca = tbModelo.codMarca [Ô] & _
[Ô]Where tbModelo.CodModelo = [Ô] & txtCodModelo)


If rs.EOF = False Then [ô]Se não é fim de arquivo, ele achou

lblNomeEquip.Caption = rs!descEquipamento
lblMarca.Caption = rs!desMarca
lblModelo.Caption = rs!descModelo
Else
txtCodModelo.Text = [Ô][Ô]
lblNomeEquip.Caption = [Ô][Ô]
lblMarca.Caption = [Ô][Ô]
lblModelo.Caption = [Ô][Ô]
MsgBox [Ô] Equipamento não cadastrado,verifique![Ô], _
vbOKOnly + vbExclamation + vbDefaultButton1 + vbSystemModal, [Ô]Cadastro de Equipamentos[Ô]
End If
End Sub
----------------------------------------------------------------------------------------------------------------------------------------------
Private Sub txtCodSetor_Change()

If txtCodSetor.Text = [Ô][Ô] Then Exit Sub

Set rs = conn.Execute([Ô]SELECT * FROM tbSetor[Ô])

If rs.EOF = False Then [ô]Se não é fim de arquivo, ele achou

lblSetor.Caption = rs!descSetor

Else
txtCodSetor.Text = [Ô][Ô]
lblSetor.Caption = [Ô][Ô]

MsgBox [Ô] Setor não cadastrado,verifique![Ô], _
vbOKOnly + vbExclamation + vbDefaultButton1 + vbSystemModal, [Ô]Cadastro de Setores[Ô]
End If
End Sub
----------------------------------------------------------------------------------------------------------------------------
Private Sub txtPlacaID_LostFocus()
Dim ComandoSQL As String
If rs.State = 1 Then rs.Close
If txtPlacaID = [Ô][Ô] Then Exit Sub
If Not IsNumeric(txtPlacaID.Text) Then Exit Sub

ComandoSQL = [Ô]SELECT codPatrimonio,PlacaID,CodModelo,codSetor,codSituacao,Obs FROM tbPatrimonio [Ô] & _
[Ô]WHERE tbPatrimonio.PlacaID=[Ô] & txtPlacaID.Text
rs.Open ComandoSQL, conn, adOpenStatic
If rs.EOF And rs.BOF Then
[ô]Se o recordset está vazio, não retornou registro com esse código:
[ô]Identifica a operacao como Inclusão:
vInclusao = True
Else
Me.txtCod.Text = rs!codPatrimonio
Me.txtCodModelo.Text = rs!codModelo
Me.txtCodSetor.Text = rs!codSetor
Me.txtDataCad.Text = rs!DataCad
Me.txtCodSituacao.Text = rs!codSituacao
Me.txtObs.Text = rs!Obs
vInclusao = False

End If
txtPlacaID.Enabled = False
Me.txtCod.Enabled = False
rs.Close
End Sub
---------------------------------------------------------------------------------------------------------
Sub LimpaForm()
Me.txtCod = [Ô][Ô]
Me.txtPlacaID = [Ô][Ô]
Me.txtCodModelo = [Ô][Ô]
Me.txtCodSetor = [Ô][Ô]
Me.txtDataCad = [Ô][Ô]
Me.txtCodSituacao = [Ô][Ô]
Me.txtObs = [Ô][Ô]
Me.lblNomeEquip.Caption = [Ô][Ô]
Me.lblMarca.Caption = [Ô][Ô]
Me.lblModelo.Caption = [Ô][Ô]
Me.lblSituacao.Caption = [Ô][Ô]
End Sub
MARCELO.TREZE 29/10/2013 18:05:10
#430508
qual linha deste codigo é destacada quando ocorre o erro?
ALANTB 30/10/2013 08:14:41
#430518
MARCELO-TREZE: segue a linha

Me.txtPlacaID.Text = rs!PlacaID
Me.txtCodModelo.Text = rs!codModelo
Me.txtCodSetor.Text = rs!codSetor
Me.txtDataCad.Text = rs!DataCad [ô] apartir dessa linha não carrega
Me.txtCodSituacao.Text = rs!codSituacao
Me.txtObs.Text = rs!Obs
LUCASVA 30/10/2013 11:15:38
#430526
o alan tb, vc tem de ter o cuidado do seguinte, lista todos os campos da tabela tbPatrimonio, outra coisa tem certeza que esta aplicação é necessario mesmo esta no change do campo, tende a ficar muito lento;
ALANTB 30/10/2013 13:51:08
#430539
LUCASVA, para facilitar então vou postar o código. Para ver o erro acessar o menu REGISTROS -->PATRIMÔNIO então no form digitar o código [Ô]1[Ô] OU no campo PLACAID o código 28191 para exibir o erro em questão. Valeu pessoal....
LUCASVA 30/10/2013 14:18:51
#430541
cara bota um select completo da tabela que te comentei, quase certeza que tem nome de campo errado;

não foi tu que escreveu este fonte? vc esta dando apenas manutenção né?
ROBSON 31/10/2013 22:01:52
#430616
Resposta escolhida
Erro 3265 é campo ausente no banco de dados Access.

Tópico encerrado , respostas não são mais permitidas