Newsgroup: it.comp.appl.access
Titolo: Conta record in sottomaschera

Scusate innanzitutto x il post un po' lungo.
Volevo contare i record che ho in una sottomaschera, stavo guardando la
funzione DCount ma su un vecchio messaggio avevo trovato un esempio di
codice e allora sono andato nei pazzi !
Forse sto facendo un po' di confusione e vi chiedo qualche delucidazione.
Per contare i record della sottomaschera devo usare una espressione come
origine di un controllo non associato o devo scrivere del codice ad es.
sull'evento Current della sottomaschera ?
Usando Dcount avevo scritto come origine di controllo la seguente
espressione (aiutandomi con la guida)
=DCount ("[IDPersona]", "TabPersoneassegnate",
"[IDPersona]='"Forms!MskPersoneassegnate![IDPersona]")
ma logicamente non funziona, da codice invece non so inserire l'istruzione
che mi dice di contare i record attualmente presenti nella sottomaschera, ma
riesco solo a contare l'intero recordset; il codice era il seguende (Access
2000):
    Dim Db As Database
    Dim Rst As DAO.Recordset
    Set Db = DBEngine.Workspaces(0).Databases(0) 'preso da un vecchio
messaggio
    Set Rst = Db.OpenRecordset("TabPersoneassegnate") ' idem
    Rst.MoveLast
    TotalePersone = Rst.RecordCount
Grazie mille per le delucidazioni
Antonio

 ha scritto nel messaggio
news:9fishr$vbd$1...@pegasus.tiscalinet.it...

Se la chiave primaria della tabella che č origine record della sottomaschera
si chiama IDPersona, il modo piů semplice per contare i record della
sottomaschera č quello di inserire nel pič di pagina della sottomaschera una
casella di testo non associata nel cui origine controllo andrai a scrivere:
=Conteggio([IDPersona])
Se poi il conteggio lo vuoi visualizzare in una casella di testo non
associata inserita nella maschera principale.
Se la tabella che č origine record della sottomaschera si chiama
TabPersoneassegnate.
Se la chiave primaria della tabella TabPersoneassegnate si chiama IDPersona.
Se la chiave esterna di TabPersoneassegnate che la mette in relazione
uno-a-molti con la tabella origine record della maschera principale si
chiama Pippo.
Se il controllo della maschera principale che contiene la chiave primaria
della tabella che ne č origine record si chiama Pluto.
Nell'origine controllo della casella di testo non associata inserita nella
maschera principale dove vuoi visualizzare il conteggio scrivi:
=DCount("[IDPersona]";"TabPersoneassegnate";"Pippo=" & Pluto)
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


Prova cosi':
inserisci un controllo testo nella form principale e come origine ci
scrivi:
=[subForm].[Form].[RecordsetClone].[RecordCount]
dove subForm e' il nome della sottomaschera.
-- 
Federico
----------------------------------
Rimuovi paperino. per e-mail
----------------------------------
Tutte le richieste che arrivano
in privato, vengono cestinate.
----------------------------------
Sito Comune di it.comp.appl.access
http://www.sitocomune.com
mailto:
webm...@sitocomune.com
----------------------------------

 Federico
Ok Grazie Roberto e Federico, come al solito era più semplice di quanto
pensassi. Ho provato tutte e tre le soluzioni, ma per quella di Federico ho
qualche problema perchè non mi prende [Form] e non mi restituisce il numero.
Comunque grazie lo stesso.
Antonio