none
Access - Insert em VBA RRS feed

  • Pergunta

  • Boa noite amigos,

    Eu estou separando alguns registros de uma tabela no Access. Preciso fazer isso via VBA.
    O Codigo corre registro por registro e faz varia verficiação. Se o registro passa por todas esta verificações em tão sua linha e copiada em uma outra tabela que possui os mesmo campos. O Problema é que ambas as tabelas possuem 68 campos. Então atravéz de um For eu eu adiciono os nomes dos campos desta linha em uma lista e os respectivos valores em outra. O Problema é que não consigo fazer o inserte destes valores na outra tabela.

    Alguem tem uma luz?

    Set prg = Form_frmAtualiza.ProgressBar1.Object
    Set db = CurrentDb()
    
    
    strSql = "SELECT * FROM Unilever_allcases"
    Set rs = db.OpenRecordset(strSql)
    rs.MoveFirst
    
      For intMes = 0 To 12
        strSql = "SELECT * FROM [PPR - Abertos (On Time) 1]"
          Set rsPPRopen = db.OpenRecordset(strSql)
          For iCont = 0 To rsPPRopen.Fields.Count - 1
            listaCampos(iCont) = rsPPRopen.Fields(iCont).Name
            ListaValores(iCont) = rs.Fields(iCont).Value
            
    
    
          Next iCont
          
          rsPPRopen.AddNew listaCampos, ListaValores
    
        
    
      
      Next intMes
    quinta-feira, 5 de agosto de 2010 20:53

Todas as Respostas

  • Tentei algoa assim, imaginando que o addnew fosse equivalente a um append, mas tb não deu certo. Existe como colocar uma função que funcione como o Append onde que crio registro, adciono o valor dos campos e salvo?

     For intMes = 0 To 12
       strSql = "SELECT * FROM [PPR - Abertos (On Time) 1]"
       Set rsPPRopen = db.OpenRecordset(strSql)
       rsPPRopen.AddNew
       For iCont0 = 0 To rsPPRopen.Fields.Count - 1
        For iCont = 0 To rs.Fields.Count - 1
         If rsPPRopen.Fields(iCont0).Name = rs.Fields(iCont).Name Then
          rs.Fields(rsPPRopen.Fields(iCont).Name) = rs.Fields(iCont).Value
          Exit For
         End If
        Next iCont
       Next iCont0
    
     Next intMes
     rs.Update
     rsPPRopen.Update
    sexta-feira, 6 de agosto de 2010 13:38