Nenhum registro atual.
17/10/2007
0
Como faço pra que quando uma consulta não encontre um determinado registro na tabela passe para o próximo registro?
eis o código:
Sub vetor()
Dim vteste() As String
Dim StrSql As String
Dim StrSql2 As String
Dim Db As DAO.Database
Dim Dbs As DAO.Database
Dim Rs As DAO.Recordset
Dim Rst As DAO.Recordset
Dim vLinha As String
Dim vPCP As String
Dim vPCP2 As String
Dim vStatus As Integer
Dim NumReg As Integer
Dim StrFilter As String
Dim Cod As String
Set Db = CurrentDb
StrSql = ´SELECT Produtos.Linha, Produtos.CódigoDoProduto ´ _
& ´FROM Produtos ´ _
& ´WHERE (((Produtos.Descontinuado)=False));´
Set Rs = Db.OpenRecordset(StrSql)
With Rs
.MoveLast
.MoveFirst
NumReg = .RecordCount
Debug.Print NumReg
Do While Not .EOF
StrFilter = !CódigoDoProduto
Debug.Print StrFilter
Set Dbs = CurrentDb
StrSql2 = ´SELECT TOP 1 ProdutosExportação.Linha, ProdutosExportação.PCP,´ _
& ´ProdutosExportação.status, ProdutosExportação.DataLiberada AS MáxDeDataLiberada ´ _
& ´FROM ProdutosExportação ´ _
& ´WHERE (((ProdutosExportação.PCP)= ´´ & StrFilter & ´´));´
Set Rst = Dbs.OpenRecordset(StrSql2)
With Rst
´ vPCP2 = !pcp
If StrFilter <> !pcp Then
GoTo pula
Else
.Edit
vLinha = !linha
vPCP = !pcp
!Status = 1
.Update
Debug.Print vLinha & ´ - ´ & vPCP & ´ - ´; !Status
End If
End With
pula:
.MoveNext
Loop
End With
Set Db = Nothing
Set Dbs = Nothing
End Sub
certo da ajuda de todos obrigado
Deus os abençoe.
eis o código:
Sub vetor()
Dim vteste() As String
Dim StrSql As String
Dim StrSql2 As String
Dim Db As DAO.Database
Dim Dbs As DAO.Database
Dim Rs As DAO.Recordset
Dim Rst As DAO.Recordset
Dim vLinha As String
Dim vPCP As String
Dim vPCP2 As String
Dim vStatus As Integer
Dim NumReg As Integer
Dim StrFilter As String
Dim Cod As String
Set Db = CurrentDb
StrSql = ´SELECT Produtos.Linha, Produtos.CódigoDoProduto ´ _
& ´FROM Produtos ´ _
& ´WHERE (((Produtos.Descontinuado)=False));´
Set Rs = Db.OpenRecordset(StrSql)
With Rs
.MoveLast
.MoveFirst
NumReg = .RecordCount
Debug.Print NumReg
Do While Not .EOF
StrFilter = !CódigoDoProduto
Debug.Print StrFilter
Set Dbs = CurrentDb
StrSql2 = ´SELECT TOP 1 ProdutosExportação.Linha, ProdutosExportação.PCP,´ _
& ´ProdutosExportação.status, ProdutosExportação.DataLiberada AS MáxDeDataLiberada ´ _
& ´FROM ProdutosExportação ´ _
& ´WHERE (((ProdutosExportação.PCP)= ´´ & StrFilter & ´´));´
Set Rst = Dbs.OpenRecordset(StrSql2)
With Rst
´ vPCP2 = !pcp
If StrFilter <> !pcp Then
GoTo pula
Else
.Edit
vLinha = !linha
vPCP = !pcp
!Status = 1
.Update
Debug.Print vLinha & ´ - ´ & vPCP & ´ - ´; !Status
End If
End With
pula:
.MoveNext
Loop
End With
Set Db = Nothing
Set Dbs = Nothing
End Sub
certo da ajuda de todos obrigado
Deus os abençoe.
Fpetrucc
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)