Queries |
2.2 Aprire una query parametrica da codice VBA. |
Federico Luciani, Roberto |
(D) Come faccio ad aprire una query con parametri da codice? (R) Ipotizziamo di avere una query parametrica dal nome qryCompleanni; i parametri si chiamano [Mese:] e [Sesso:] Allora il codice necessario per passare i parametri alla query e creare un recordset basato sul risultato della query è: Dim dbs As DAO.Database Dim qdf As DAO.QueryDef Dim rst as DAO.Recordset Set dbs = CurrentDB Set qdf = dbs.QueryDefs("qryCompleanni") qdf.Parameters![Mese:] = "Marzo" qdf.Parameters![Sesso:] = "F" Set rst = qdf.OpenRecordset '... rst.close qdf.close Set dbs = nothingSe poi i parametri sono contenuti in una maschera chiamata frmParametri in due controlli chiamati rispettivamente CercaMese e CercaSesso: Dim dbs As DAO.Database Dim qdf As DAO.QueryDef Dim rst as DAO.Recordset Set dbs = CurrentDB Set qdf = dbs.QueryDefs("qryCompleanni") qdf.Parameters![Forms!frmParametri!CercaMese] = Forms!frmParametri!CercaMese qdf.Parameters![Forms!frmParametri!cercaSesso] = Forms!frmParametri!CercaSesso Set rst = qdf.OpenRecordset '... rst.close qdf.close Set dbs = nothingNB Il codice VBA di cui sopra fa riferimento alle librerie Microsoft DAO quindi, se si usa una versione di Access successiva ad Access 97, occorre aggiungere tale libreria ai riferimenti del database. |