CISA FotoGallery

Statistiche

Tot. visite contenuti : 928200
Home Articoli tecnici Moduli Ricerca Duplicati

Ricerca Duplicati

Questa funzione consente di verificare se un Record è già presente effettuando una verifica per CRITERIO
Non uso le Funzioni di aggregazione sui Domini DCOUNT o DLOOKUP per motivi di prestazioni, risulta
estremamente più veloce interrogare il Recordset in questo modo che ricorrere alla Funzione Nativa.

L'utilizzo è semplice, occorre passare alla Funzione alcuni parametri:

[Campo]=Nome del CAMPO da usare per la Ricerca.
[Tabella]=Nome della Tabella/Query nella quale cercare
[Confronto]=Valore da usare nel Criterio di Ricerca.

Non occorre passare formattazioni di tipo Stringa o data o altro, solo il valore.
[Tipo]=Esplicita il TIPO di dato da Formattare solitamente è opportuno passare una costante già riconosciuta da Access, contenuta nell'elenco TYPE sottoriportato e ben dettagliato nell'Help

[ELENCO COSTANTI PER TIPO DATI]
dbBigInt
dbBinary
dbBoolean
dbByte
dbChar
dbCurrency
dbDate
dbDecimal
dbDouble
dbFloat
dbGUID
dbInteger
dbLong
dbLongBinary
dbMemo
dbNumeric
dbSingle
dbText
dbTime
dbTimeStamp
dbVarBinar


Public Function GetDuplicato(Campo As String, _
                                                Tabella As String, _
                                                Confronto As String, _
                                                Tipo) As boolean

    Dim strCriteria As String
    Dim
rs As DAO.Recordset
    strCriteria = "SELECT COUNT(*) as Duplicati FROM " & Tabella & " WHERE "
    strCriteria = strCriteria & BuildCriteria(Campo, Tipo, Confronto)
    Set rs = CurrentDb.Openrecordset(strCriteria)

    GetDuplicato = (rs.Fields("Duplicati") <> 0)
    rs.Close
    Set rs = Nothing
End Function

Alessandro Baraldi