MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Fazer mais de 3 pesquisas á mesma base dados

    Compartilhe

    tio_patinhas
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 2
    Registrado : 03/09/2011

    [Resolvido]Fazer mais de 3 pesquisas á mesma base dados

    Mensagem  tio_patinhas em Qua 27 Jan 2016, 16:46

    Boas tardes

    estou a tentar fazer varias pesquisas a uma base de dados para ela me retomar uma campo "Stock".

    Quando na minha base de dados existem mais que uma referencia (mais de 3) e por cada uma delas faço uma pesquisa para me retornar o Stock,
    aparece sempre um erro "Run-time error '-2147352567(80020009)': O valor introduzido não é válido para este campo."

    Se a referencia principal so tiver mais duas alternativas e por isso ´so é realizado 2 pesquisas o código funciona bem.

    O código é o seguinte:

    Dim strSQL As String
       
      If Not IsNull(Me.MARCA) Then
       strSQL = "SELECT STOCK from PRODUTOS where REFERÊNCIAORIGEM = '" & Me.MARCA & "';"
       Set Rt = CurrentDb.OpenRecordset(strSQL)
       Me.txtref0 = Rt.Fields("STOCK")
       End If
       
      If Not IsNull(Me.Referencia1) Then
       strSQL = "SELECT STOCK from PRODUTOS where REFERÊNCIAORIGEM = '" & Me.Referencia1 & "';"
       Set Rt = CurrentDb.OpenRecordset(strSQL)
       Me.txtref1 = Rt.Fields("STOCK")
       End If
       
     If Not IsNull(Me.Referencia2) Then
       strSQL = "SELECT STOCK from PRODUTOS where REFERÊNCIAORIGEM = '" & Me.Referencia2 & "';"
       Set Rt = CurrentDb.OpenRecordset(strSQL)
       Me.txtref2 = Rt.Fields("STOCK")
       End If
       
     If Not IsNull(Me.Referencia3) Then
       strSQL = "SELECT STOCK from PRODUTOS where REFERÊNCIAORIGEM = '" & Me.Referencia3 & "';"
       Set Rt = CurrentDb.OpenRecordset(strSQL)
       Me.txtref3 = Rt.Fields("STOCK")
       End If
       
     If Not IsNull(Me.Referencia4) Then
       strSQL = "SELECT STOCK from PRODUTOS where REFERÊNCIAORIGEM = '" & Me.Referencia4 & "';"
       Set Rt = CurrentDb.OpenRecordset(strSQL)
       Me.txtref4 = Rt.Fields("STOCK")
       End If

    O problema e que não posso utilizar o Rt.Fields("STOCK") do  OpenRecordset mais que 2 vezes.

    Ou se o souberem fazer de outra maneira melhor agradeço.

    Utilizo access 2007 ou superior

    Abraços

    tio_patinhas
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 2
    Registrado : 03/09/2011

    Re: [Resolvido]Fazer mais de 3 pesquisas á mesma base dados

    Mensagem  tio_patinhas em Qua 27 Jan 2016, 22:22

    Resolvido com o comando DLookup

    cumprimentos

      Data/hora atual: Sab 19 Ago 2017, 14:52