Funzione di somma su report Access da effettuare su intera tabella.

di Saverio Ricca il
17 risposte

Buonasera a tutti.

Chiedevo un aiutino su una formula da utilizzare su report Access.

Il mio problema e quello di poter riportare in un report mensile il saldo complessivo di un determinato cliente.

Mi spiego meglio. Ho un report che utilizzo per poter estrappolare le scadenze mensili delle polizze dei miei clienti, io vorrei che per quel determinato cliente, estrappolato nella generazione del report , mi riportasse il saldo pregresso del cliente stesso.

Ho utilizzato questa formula: 

=DSum("[RestodaPagareQuietanza]";"dbQuietanze")

ma mi riporta sul report e su tutti i clienti la somma dell' intera tabella del campo RestodaPagareQuietanza.

Come posso scrivere la formula dove estrappola solo la somma del campo RestodaPagareQuietanza per il solo cliente estrappolato?

Vi ringrazio anticipatamente.

Ciao

17 Risposte

  • Devi indicare il criterio come terzo argomento della funzione. Mostra o campi delle tabelle e le relazioni tra le tabelle.

  • Scusami Antony73

    il problema è proprio il criterio da adoperare come terzo argomento della funzione

    =DSum("[RestodaPagareQuietanza]";"dbQuietanze";"[IDCliente]='..........'")

    Tabella “Clenti”  IDCliente  relazionato uno a molti con Tabella “Polizze”  IDPolizza che a sua volta è relazionata una a molti con la tabella “Quietanze”  IDQuietanza dove è presente il campo RestodaPagareQuietanza.

    Non riesco a completare la formula appunto

    Grazie

  • 02/07/2023 - Antony73 ha scritto:


    Devi indicare il criterio come terzo argomento della funzione. Mostra o campi delle tabelle e le relazioni tra le tabelle.

    Scusami Antony73

    il problema è proprio il criterio da adoperare come terzo argomento della funzione

    =DSum("[RestodaPagareQuietanza]";"dbQuietanze";"[IDCliente]='..........'")

    Tabella “Clenti”  IDCliente  relazionato uno a molti con Tabella “Polizze”  IDPolizza che a sua volta è relazionata una a molti con la tabella “Quietanze”  IDQuietanza dove è presente il campo RestodaPagareQuietanza.

    Non riesco a completare la formula appunto

    Grazie

  • Scusa ma il cliente come lo selezioni?

  • questo è la generazione del report

    questo è il report generato

    02/07/2023 - Antony73 ha scritto:


    Scusa ma il cliente come lo selezioni?

    questo è il report che genero

    questa è la struttura del report

    da questa maschera seleziono i criteri

  • Occhio ai dati sensibili…

    Ho visto numeri telefonici, date di nascita e numero polizza…

    Invece di usare il blu era meglio disegnarci soora un rettangolo nero…

  • Ok. provvedo

  • Scrivi cosi:

    =DSum("[RestodaPagareQuietanza]";"dbQuietanze";"[IDCliente]=" & Forms![Nome_Form]![Nome_Controllo].column(0))

    essocia il campo IDCliente alla prima colonna della combobox corrispondente.

  • 02/07/2023 - Antony73 ha scritto:


    Scrivi cosi:

    =DSum("[RestodaPagareQuietanza]";"dbQuietanze";"[IDCliente]=" & Forms![Nome_Form]![Nome_Controllo].column(0))

    essocia il campo IDCliente alla prima colonna della combobox corrispondente.

    Ok grazie.

    Ci provo subito e ti faccio sapere.

    Grazie di nuovo

  • 02/07/2023 - Antony73 ha scritto:


    Scrivi cosi:

    =DSum("[RestodaPagareQuietanza]";"dbQuietanze";"[IDCliente]=" & Forms![Nome_Form]![Nome_Controllo].column(0))

    essocia il campo IDCliente alla prima colonna della combobox corrispondente.

    Ok inserito codice come sotto

    =DSum("[RestodaPagareQuietanza]";"dbQuietanze";"[IDCliente]=" & [Maschere]![MascheraStampaQuietanzedaFiltrare]![SceltaCliente].[Column](0))

    ma da errore.

    nella combobox “SceltaCliente” è inserito * per estrappolare tutti i clienti in quel periodo.

    il codice è stato modificato in automatico quando salvato.

  • Hai impostato la combobox a due colonne con il campo idcliente associato alla prima colonna?

  • 02/07/2023 - Antony73 ha scritto:


    Hai impostato la combobox a due colonne con il campo idcliente associato alla prima colonna?

    No a una colonna con la formula:

    SELECT DISTINCT IDCliente FROM dbClienti UNION SELECT '*' AS dbClienti FROM lkbRicerche;

    riscrivo il codice:

    nel campo RestodaPagare a report generato da "#ERRORE

    =DSum("[RestodaPagareQuietanza]";"dbQuietanze";"[IDCliente]=" & [Maschere]![MascheraStampaQuietanzedaFiltrare]![SceltaIDCliente].[Column](0))

    Ho creato una combox nuova “SceltaIDCliente”  ovviamente non piu ricerca su “SceltaCliente” per evitare somme su omonimi.

  • Riscrivi allora:

    =DSum("[RestodaPagareQuietanza]";"dbQuietanze";"[IDCliente]=" & [Maschere]![MascheraStampaQuietanzedaFiltrare]![SceltaIDCliente]
  • 02/07/2023 - Antony73 ha scritto:


    =DSum("[RestodaPagareQuietanza]";"dbQuietanze";"[IDCliente]=" & [Maschere]![MascheraStampaQuietanzedaFiltrare]![SceltaIDCliente]

    Niente da sempre #ERRORE

    Sic

Devi accedere o registrarti per scrivere nel forum
17 risposte