CONTARE QUANTI RECORD CI SONO IN UNA TABELLA CON VBA

vbasnippets

Quanti record ci sono nella mia tabella?

In access, questa è decisamente un’operazione banale. Se però dobbiamo interrogare una tabella in VBA, la questione può darci qualche grattacapo. Il codice che vi propongo non è il più veloce di tutti ma, dal momento che spesso è vecessario integrare il conteggio in una operazione di lettura dei record, allora conviene tenere sott’occhio questo sistema che svolge poche ed essenziali operazioni:

  • apre la connessione al db e apre la tabella;
  • si sposta al primo record;
  • si sposta all’ultimo record;
  • conta quanti record, per così dire, ha “attraversato” e ci restituisce il valore in una variabile (numero_clienti);
  • chiude la connessione al DB

Immaginiamo dunque di avere una tabella “clienti” nella quale uno dei campi è denominato “id_cliente” (va benissimo qualunque tipo di campo).

Se lo scopo è esclusivamente quello di contare è sufficiente utilizzare la funzione DCOUNT inserito in un qualunque evento (per esempio il click di un pulsanteI:

quanticlienti = DCount("id_cliente", "clienti")

Ecco il codice esteso, comodo quando si voglia manipolare la tabella:

Sub numeroclienti()
strSQL = "SELECT id_cliente FROM clienti;"
Set mioDB = CurrentDb
Set tabellaclienti = mioDB.OpenRecordset(strSQL, dbOpenDynaset)
tabellaclienti.MoveFirst
tabellaclienti.MoveLast
numero_clienti = tabellaclienti.RecordCount
tabellaclienti.Close

End Sub

No thoughts on “CONTARE QUANTI RECORD CI SONO IN UNA TABELLA CON VBA”