Dcount e criterio data

di il
21 risposte

Dcount e criterio data

Buongiorno a tutti
dopo aver ricevuto encomiabile aiuto dal forum sono di nuovo bloccato
Non riesco ad impostare sintassi corretta come criterio data
Dcount("*"; "TblMatchFit" ; "IDAtleta = & [IDAtleta] & " AND [Esito] ='W'" & " AND [DataMatch] = between 01/01/2016 And 31/12/2106" )
Cosi ottengo errore, ho provato molte sintassi ma nulla.
Purtroppo ho molti limiti nelle funzioni
Grazie per eventuali aiuti
Stefano

21 Risposte

  • Re: Dcount e criterio data

    Gli errori sul 3° argomento sono vari...sembra come se te la sei andata a cercare in quanto vuoi un AND triplo su 3 tipi di campi diversi: numerico, testo, data.
    IDAtleta = & [IDAtleta]
    Questa, al di là della sintassi errata, non mi convince cosa vuoi filtrare. [IDAtleta] dove compare? Stai lavorando dentro una maschera? Vuoi prelevare il [IDAtleta] corrente...quello che si vede in maschera?
    between 01/01/2016 And 31/12/2016
    forse deve diventare
    between #01/01/2016# And #31/12/2016#
    C'è poi la solita giungla di apici semplici e apici doppi da rivedere "piano-piano".

    Se stai lavorando in un codice VBA, in questi casi complessi conviene memorizzare tutta la stringa (a pezzettini) dentro una apposita variabile di tipo String.
  • Re: Dcount e criterio data

    Ciao e Grazie della risposta
    sto lavorando dentro il generatore di espressioni , e su una maschera che per comodita allego screenshot
    la stringa che dici errata funziona ( c'e un mio post precedente di ieri ) e calcola correttamente
    ora dovrei ulteriormente filtrare i dati per presentare per ogni allievo il dettaglio match vinti / persi ma divisi per anno
    Ogni volta che scorro un record i dati devono ovviamente cambiare
    La form in allegato dovrebbe chiarire meglio
    Grazie
    Allegati:
    19709_e2f22ac94e2ec5d6c57e0eb5bd3c3d4b.png
    19709_e2f22ac94e2ec5d6c57e0eb5bd3c3d4b.png
  • Re: Dcount e criterio data

    stefano1965 ha scritto:


    ...
    Dcount("*"; "TblMatchFit" ; "IDAtleta = & [IDAtleta] & " AND [Esito] ='W'" & " AND [DataMatch] = between 01/01/2016 And 31/12/2106" )
    Cosi ottengo errore, ho provato molte sintassi ma nulla.
    ...
    Ahi ahi ahi... ad ogni passo avanti ti blocchi. L'errore più "grossolano" è dato dalla sintassi: non hai imparato a concatenare i criteri.
    DCount Function

    Risolta questa avrai il problema delle date e qui... apriti o cielo.
  • Re: Dcount e criterio data

    Sinceramente non ho ancora afferrato (rispondo a Stefano).
    Più in generale, io, nei casi in cui non mi raccapezzo, procedo così:
    A: Facile) Creo una query e i criteri li scrivo in visualizzazione struttura. Salvo la query con nome X. Poi faccio un semplice
    DCount("*"; "X")
    B: Alternativa) Se voglio davvero imparare un po' sulle espressioni, imposto ugualmente quella query X. Poi vado in visualizzazione SQL e cerco di catturare la WHERE e scrivo tutto "coerentemente" nel 3° argomendo di DCount.
  • Re: Dcount e criterio data

    Ma questa funziona perfettamente:
    Dcount("*"; "TblMatchFit" ; "IDAtleta = & [IDAtleta] & " AND [Esito] ='W'")
    Ora devo solo aggiungere un altro criterio per filtrare i match vinti divisi per anno
    Devo concatenare un altro criterio , ma ho difficolta' sulla sintassi che conosco molto poco
    Ma per limiti miei , ovvio , sto lavorando sul generatore di espressioni , ritenete meglio VBA ?
    Gli esempi li ho visti ma non trattano intervalli di date
    Stefano
  • Re: Dcount e criterio data

    Ma questa funziona perfettamente:
    Dcount("*"; "TblMatchFit" ; "IDAtleta = & [IDAtleta] & " AND [Esito] ='W'")
    Non credo
  • Re: Dcount e criterio data

    stefano1965 ha scritto:


    ...
    Ora devo solo aggiungere un altro criterio per filtrare i match vinti divisi per anno
    In generale, per i criteri: (questa l'ho trovata questa mattina per un DSum ma vale anche per DCount)
    . Per le date leggi la terza parte di quella "guida".
    Se ti interessa fare una ricerca in un solo anno completo (e ripeto, sottolineando, SOLO e COMPLETO), qui per puro "errore" si è sviluppata una discussione che può darti qualche spunto.
    **
  • Re: Dcount e criterio data

    oregon ha scritto:


    Ma questa funziona perfettamente:
    Dcount("*"; "TblMatchFit" ; "IDAtleta = & [IDAtleta] & " AND [Esito] ='W'")
    Non credo
    Ripeto funziona perfettamente , basta guardare lo screenshot ,
    Non invio notizie errate
  • Re: Dcount e criterio data

    Ma in questa stringa

    "IDAtleta = & [IDAtleta] & " AND [Esito] ='W' "

    quante " ci sono ?
  • Re: Dcount e criterio data

    stefano1965 ha scritto:


    ...
    Dcount("*"; "TblMatchFit" ; "IDAtleta = & [IDAtleta] & " AND [Esito] ='W'")
    ...
    Ripeto funziona perfettamente , basta guardare lo screenshot
    Qui riporto quella "veramente" funzionante, come indicata da @Alex e proprio da te confermata
    https://www.iprogrammatori.it/forum-programmazione/access/funzione-dcount-record-corrente-t28225.html
    DCount("*";"TblMatchFit";"IDAtleta = " & [IDAtleta] & " AND [Esito] = 'W'")
    Probabilmente si tratta di un errore di "copia-incolla" in questo thread ma come vedi i due codici non sono identici ed oregon ti ha detto dove sta l'errore.
  • Re: Dcount e criterio data

    Ecco quindi
    Non invio notizie errate
    non è proprio così almeno per quello che hai riportato nella riga che io ho letto (e so ancora leggere ...)
  • Re: Dcount e criterio data

    Grazie ho risposto ad Oregon
    purtroppo il generatore di espressioni non permette il copia ed incolla quindi l'ho riscritta a mano velocemente omettendo un "
    DCount("*";"TblMatchFit";"IDAtleta = " & [IDAtleta] & " AND [Esito] = 'W'")
    Questa lo so che e' perfetta e funzionante ( vedi screenshot )
    Putrtroppo non riesco ad inserire un altro criterio , non e' un problema di concatenazione ( AND ) ma di sintassi riguardante un intervallo di date
    Ho capito che il generatore di espressioni ha sintassi leggermente diverse da altri controlli
    Quindi sto provando numerose soluzioni per un ulteriore criterio ( intervallo di Date ) che segnala i match vinti relativi solo a quell'anno
    Ringrazio tutti per l'aiuto
    Stefano
  • Re: Dcount e criterio data

    oregon ha scritto:


    Ecco quindi
    Non invio notizie errate
    non è proprio così almeno per quello che hai riportato nella riga che io ho letto (e so ancora leggere ...)
    sorry
    il generatore di espressioni non permette il copia ed incolla , ho riscritto velocemente a mano la stringa ed ho omesso un apice

    Scusami
    Stefano
  • Re: Dcount e criterio data

    Quindi penso che nella stringa del criterio tu voglia qualcosa come

    "IDAtleta = " & [IDAtleta] & " AND [Esito] ='W' AND [DataMatch] BETWEEN #01/01/2016# AND #12/31/2106#"
Devi accedere o registrarti per scrivere nel forum
21 risposte