DSum con 2 criteri

di il
4 risposte

DSum con 2 criteri

Buongiorno a tutti!

Prego vogliate perdonare la mia poca esperienza ma purtroppo ho un problema con la funzione DSum.

Al momento ho questa che funziona bene:

Me.TOTComplessivo = DSum("[TotRicambi&Manodopera]", "Riparazioni", "[IDCliente] = " & Me.IDCliente)

In poche parole restituisce la somma dei valori presenti nel campo TotRicambi&Manodopera della tabella Riparazioni quando il campo IDCliente di quella tabella è uguale al numero IDCliente della TextBox della mia maschera.

Fun qui tutto Ok.
Purtroppo avrei bisogno di un secondo criterio e sto sbattendo la testa con la sintassi.

Sempre nella tabella Riparazioni è presente un campo che si chiama Filtro. Questo è un campo Si/No

Io vorrei che il DSum oltre a fare quello che già fa deve prendere in considerazione anche il campo Filtro e fare la somma solo a quelli che hanno il Si (cioè il segno di spunta).
Spero di aver spiegato in modo più esaustivo possibile.

Grazie a tutti per il supporto!

4 Risposte

  • Re: DSum con 2 criteri

    kris9951 ha scritto:


    ..avrei bisogno di un secondo criterio e sto sbattendo la testa con la sintassi.
    Parto dal presupposto che DSum sia la via giusta.
    Il terzo argomento della funzione è una WhereCondition senza la parola Where (e nemmeno Condition se a qualcuno venisse il sospetto). Il tutto è ovviamente una stringa.
    Per vedere come si costruire una where condition con condizioni multiple si può:
    1) cercare su internet, ci sono esempi a non finire;
    2) creare una query di test, sulla tabella Riparazioni, compilando adeguatamente la riga per dei valori da trovare in corrispondenza dei campi [IdCliente] e [Filtro], passare quindi alla visualizzazione SQL e leggere cosa c'è dopo WHERE.
    Il fatto che in quella query di prova tu indichi un IDCliente specifico non è un problema perché comunque sai già come sostituire ad un valore fisso il dato che poi sarà della maschera. Quello che ti interessa maggiormente è vedere come si verifica un campo Sì/No.
    Poi devi concatenare, nella maschera, ma anche questo lo si trova con gli esempi di cui al punto 1)
  • Re: DSum con 2 criteri

    Grazie per il suggerimento.

    Risolto
  • Re: DSum con 2 criteri

    kris9951 ha scritto:


    Risolto
    E' buona cosa scrivere anche come l'hai risolto, così tutti possono beneficiare della soluzione.
  • Re: DSum con 2 criteri

    Risolto così:
    =DSum("[TotRicambi&Manodopera]";"Riparazioni";"[IDCliente] = " & [IDCliente] & "And [Filtro] =true")
Devi accedere o registrarti per scrivere nel forum
4 risposte