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

    Utilizar uma consulta no comando select do VBA Access

    Compartilhe

    ernandofc
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 13
    Registrado : 21/10/2015

    Utilizar uma consulta no comando select do VBA Access

    Mensagem  ernandofc em 10/1/2018, 16:13

    Prezados, boa tarde

    Tenho o seguinte código abaixo. Ele localiza todos os registros que constam na TAB_ITENS_PROP e insere na tabela TAB_STATUS_ENTREGA_ITEM, através do critério número da proposta, que é uma string. Após inserir o primeiro, ele move-se para o segundo. E quando não há mais registros, ele finaliza. O código funciona perfeitamente.

    No entanto, o que eu preciso, é fazer um select em uma consulta já existente no acccess, chamada "CONS_CONTATOS_PV_CARREGAR". Pelo pouco que descobri, não é possível incluir uma consulta em um comando select. Alguém pode ajudar?

    Código abaixo>>>>>

    Dim strSql As String ' usada para fazer comando insert
    Dim rs As DAO.Recordset


    strSql = "Select * FROM [TABITENSPROP] WHERE [Proposta] = '" & Me.Proposta & "'"


    Set rs = CurrentDb.OpenRecordset(strSql)

    Do While rs.EOF = False ' se não existir mais registros, deve parar de inserir

    ' desabilita mensagens de notificação
    DoCmd.SetWarnings False

    faz a inserção das notificação via insert do SQL

    strSql = "INSERT INTO TAB_STATUS_ENTREGA_ITEM (CódItemPai, DtInc, UsuárioInclusão, Status, IdentifStatus, ÚltStatus)" & _
    "Values('" & rs.Fields(9) & "','" & Date & "','PIPELAB','PEDIDO A SER COLOCADO','0','X')"
    DoCmd.RunSQL strSql

    ' Move para o próximo registro
    rs.MoveNext

    Loop 'encerra o loop

    End Sub
    avatar
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7056
    Registrado : 05/11/2009

    Re: Utilizar uma consulta no comando select do VBA Access

    Mensagem  Alexandre Neves em 11/1/2018, 12:15

    Bom dia e bem-vindo ao fórum
    Pode utilizar uma consulta como origem do recordset
    Seguidamente, crie o filtro no recordset como pretende

    strSql = "Select * FROM [TABITENSPROP]"


    Set rs = CurrentDb.OpenRecordset(strSql)
    rs.filtrer="[Proposta] = '" & Me.Proposta & "'"
    rs=rs.openrecordset


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo

      Data/hora atual: 19/12/2018, 16:22