Guest User

Crear Consulta desde VBA en Access

a guest
Mar 1st, 2010
350
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Private Sub cmdConsulta_Click()
  2. On Error GoTo Err_cmdConsulta_Click
  3.  
  4. Dim qdfNew As DAO.QueryDef
  5. Dim strSQL As String
  6.  
  7.  If Len(Nz(DLookup("Name", "msysobjects", _
  8.  "type=5 and Name= 'MiConsulta'"), "")) <> 0 Then
  9.     DoCmd.DeleteObject acQuery, "MiConsulta"
  10.  End If
  11.  
  12.  
  13. strSQL = "SELECT dbo_SWNOMPER001.CEDULA, dbo_SWNOMPER001.APENOM, dbo_SWNOMPER001.DFECNAC, dbo_SWNOMPER001.SEXO, Sum(dbo_SWNOMMDT001.MONTO) AS SumaDeMONTO " & _
  14. "FROM dbo_SwNomVip000 " & _
  15. "INNER JOIN ((dbo_SWNOMMDT001 INNER JOIN dbo_SWNOMPER001 ON dbo_SWNOMMDT001.FICHA = dbo_SWNOMPER001.FICHA) INNER JOIN dbo_SWNOMHMV001 ON dbo_SWNOMMDT001.CODNOM = dbo_SWNOMHMV001.CODNOM) ON dbo_SwNomVip000.CODORG = dbo_SWNOMPER001.CODVP  " & _
  16. "WHERE (((dbo_SWNOMHMV001.PERIODO_INI) >= 76306) And ((dbo_SWNOMHMV001.PERIODO_FIN) <= 76342)) " & _
  17. "GROUP BY dbo_SWNOMPER001.CEDULA, dbo_SWNOMPER001.APENOM, dbo_SWNOMPER001.DFECNAC, dbo_SWNOMPER001.SEXO, dbo_SWNOMPER001.NOMBRES, dbo_SWNOMPER001.APELLIDOS, dbo_SWNOMPER001.SUESAL, dbo_SWNOMPER001.DFECING, dbo_SWNOMPER001.DFECHARETIRO, dbo_SWNOMPER001.CODVP, dbo_SwNomVip000.DESCRIP, dbo_SWNOMMDT001.FICHA, dbo_SWNOMPER001.APENOM, dbo_SWNOMMDT001.CODCON " & _
  18. "HAVING (((dbo_SWNOMMDT001.CODCON)=103 Or (dbo_SWNOMMDT001.CODCON)=2012 Or (dbo_SWNOMMDT001.CODCON)=3330 Or (dbo_SWNOMMDT001.CODCON)=3509));"
  19.  
  20. Set qdfNew = CurrentDb.CreateQueryDef("MiConsulta", strSQL)
  21. DoCmd.OpenQuery "MiConsulta", acNormal, acEdit
  22.  
  23. Set MiConsulta = Nothing
  24.  
  25. Exit_cmdConsulta_Click:
  26.     Exit Sub
  27.  
  28. Err_cmdConsulta_Click:
  29.     MsgBox Err.Description
  30.     Resume Exit_cmdConsulta_Click
  31.    
  32. End Sub
Advertisement
Add Comment
Please, Sign In to add comment