Come creare report con dati filtrati e totali

di il
12 risposte

Come creare report con dati filtrati e totali

Buongiorno a tutti,
prima di esporre la problematica che mi sta mandando al manicomio devo fare alcune premesse: ho pochissima esperienza in Access e sono autodidatta. Grazie a Voi sono riuscito a capire diverse cose e di questo vi ringrazio così come ringrazio anticipatamente chi potrà dedicarmi un po' del suo tempo.
Allora venendo al dunque sto cercando di migliorare un DB che ho creato per archiviare e gestire l'attività di lancio col paracadute.
Quello che non riesco a fare, nonostante abbia cercato di "rubare" i consigli già pubblicati, è un report che contenga, per ogni sortita di lancio, il totale dei diversi paracadute utilizzati nella sortita.
Ho creato un query semplice (Query_Materiali PARAP) che in funzione della data scritta in una maschera mi mostra le varie sortite fatte in quel giorno e che tipo di paracadute sono stati utilizzati.
Per i paracadute, questi vengono identificati da una serie di lettere (da 1 a 3) seguiti da un numero che può avere da 1 a 3 cifre.
Allego un paio di immagini delle query che utilizzo.
Grazie ancora per l'aiuto che potrete darmi.
Allegati:
31594_5acef612bdcdfe62c723198c9b70a25b.png
31594_5acef612bdcdfe62c723198c9b70a25b.png

31594_cf29f269d493aa275c17410742e88752.jpg
31594_cf29f269d493aa275c17410742e88752.jpg

12 Risposte

  • Re: Come creare report con dati filtrati e totali

    1. Crea un report che poggia sulla tua query
    2. Nel piè di pagina del report aggiungi una casella di testo dove dentro ci scrivi una espressione del tipo
    =Somma([NomeCampoSulQualeVuoiFareLaSomma])
  • Re: Come creare report con dati filtrati e totali

    Osvaldo buongiorno,
    ho fatto come mi hai detto ma mi appare un msg di errore del tipo espressione digitata incorrettamente o troppo complessa per essere valutata.
    Sono certo di aver digitato correttamente per la complessità non mi esprimo non avendo conoscenza.
    Nonostante abbia provato ad essere il più chiaro possibile credo di non esserlo stato invece.....
    prendendo ad esempio l'img. 1 nella sortita nr. 2 sono stati utilizzati 1 MT1, 3 SH e 4 NAV.
    Nel report vorrei che fossero riportati queste somme per ogni sortita.
    Presumo quindi che prima vadano filtrati i dati per sortita e per tipo di materiale e poi procedere con le varie somme.
    Cosa che riesco a fare applicando manualmente ma vorrei averli già impacchettati per poterli stampare.
    Mi auguro di aver meglio esposto il mio problema.
    Grazie ancora per il tuo tempo ed interesse.
  • Re: Come creare report con dati filtrati e totali

    Io vedo dalla query che hai un campo [Sortita nr.]. È su questo campo che devi fare la somma? Perchè parli di più somme?
  • Re: Come creare report con dati filtrati e totali

    Scusami Osvaldo probabilmente non essendo molto pratico utilizzo termini scorretti.
    non voglio sommare il campo [sortita nr.] ma vorrei vedere in automatico quante volte nella singola sortita viene utilizzato uno specifico tipo di paracadute campo [C9] ed è per questo che parlo al plurale.
    In sostanza è l'equivalente di un SE + CONTA.SE di Excel nel senso che col SE definisco la sortita nr. e col CONTA.SE gli chiedo di contare quante volte una determinata voce e presente. =SE(C2:C140 =1;CONTA.SE(B2:B140;"SH*");FALSO)
  • Re: Come creare report con dati filtrati e totali

    napkab ha scritto:


    In sostanza è l'equivalente di un SE + CONTA.SE di Excel nel senso che col SE definisco la sortita nr. e col CONTA.SE gli chiedo di contare quante volte una determinata voce e presente. =SE(C2:C140 =1;CONTA.SE(B2:B140;"SH*");FALSO)
    Non puoi usare lo stesso linguaggio/logica di Excel in Access. Forse ti serve un'altra query di calcolo che si fonda sui dati della query precedente...ma (sinceramente) non ho capito cosa vuoi ottenere. Almeno per me occorre una spiegazione passo passo e con un linguaggio per non addetti ai tuoi lavori.
  • Re: Come creare report con dati filtrati e totali

    Salve,
    ti prospetto una soluzione a quello che hai già fatto aggiungo solo un campo "IdParacadute" per cui la Tua TabParacaduti diventerà
    IdPar questo lo chiamo con un NomeCampo ridotto ma è l'idParacadute
    TipoParacaduti

    la tua Query diventerà così

    Data............Sortita...IdPar...TipoParacadute......SommaT4:iif([IdPar]=1;1;0).......SommaPd4:iif([IdPar]=2;1;0)...etc.....
    10/10/2010......1.........1............T4..................................1.........................................0
    10/10/2010......1.........2............Pd4 etc............................0.........................................1
    _____________________________________________Somma......1__________________ Somma.....1
    Ho usato gli IdPar perchè non sia mai un nome paracadute venga digitato in modo maldestro non succede nulla.
    Spero essere stato chiaro, sempre se ho compreso il problema.
    Saluti

    Nb scusa mi sono acchiappato con l'incolonnamento ma giuro che prima o poi ce la farò
  • Re: Come creare report con dati filtrati e totali

    OsvaldoLaviosa ha scritto:


    napkab ha scritto:


    In sostanza è l'equivalente di un SE + CONTA.SE di Excel nel senso che col SE definisco la sortita nr. e col CONTA.SE gli chiedo di contare quante volte una determinata voce e presente. =SE(C2:C140 =1;CONTA.SE(B2:B140;"SH*");FALSO)
    Non puoi usare lo stesso linguaggio/logica di Excel in Access. Forse ti serve un'altra query di calcolo che si fonda sui dati della query precedente...ma (sinceramente) non ho capito cosa vuoi ottenere. Almeno per me occorre una spiegazione passo passo e con un linguaggio per non addetti ai tuoi lavori.
    Buongiorno Osvaldo,
    provo a spiegarmi meglio....
    diciamo che vendo auto e il 15/12/2021 emetto 2 fatture = (Sortita nr.)
    nella prima inserisco i seguenti record = (paracadute tipo)
    BMW X1
    BMW X2
    BMW X5
    AUDI A3
    AUDI A5

    nella seconda
    BMW X2
    BMW X5
    BMW X4
    AUDI A2
    AUDI A3
    AUDI A5
    VOLVO XC90
    VOLVO XC60

    quello che mi serve è un report dove mi venga indicato quante BMW e quante AUDI (indipendentemente dal modello) ho venduto nella fattura nr. 1 e quante nella fattura nr. 2 e via dicendo.
    Riferendomi all'esempio fatto vorrei vedere qualcosa tipo questo:
    Data: 15/12/2021
    1 Fattura: BMW 3 - AUDI 2
    2 Fattura: BMW 3 - AUDI 3 - VOLVO 2

    Spero di essere stato un poco più chiaro.
    Grazie
  • Re: Come creare report con dati filtrati e totali

    Per la gioia del mio dietologo sono diventato trasparente
    Mah hai letto quello che ho scritto io:
    In Excel scrivi:
    =SE(C2:C140 =1;CONTA.SE(B2:B140;"SH*");FALSO)
    In Access:
    SommaT4:iif([IdPar]=1;1;0).
    Il tuo Se in access si traduce in iif, però se devi continuare a scrivere in Access devi abbandonare definitivamente Excel ed imparare/approfondire Access, che in comune con Excel ha solo una visione tabellare dei dati.

    Nb ho nominato il campo "SommaT4" ma questo è solo il NomeCampo e non una funzione .
  • Re: Come creare report con dati filtrati e totali

    napkab ha scritto:


    Buongiorno Osvaldo,
    provo a spiegarmi meglio....
    diciamo che vendo auto e il 15/12/2021 emetto 2 fatture = (Sortita nr.)
    nella prima inserisco i seguenti record = (paracadute tipo)
    BMW X1
    BMW X2
    BMW X5
    AUDI A3
    AUDI A5

    nella seconda
    BMW X2
    BMW X5
    BMW X4
    AUDI A2
    AUDI A3
    AUDI A5
    VOLVO XC90
    VOLVO XC60

    quello che mi serve è un report dove mi venga indicato quante BMW e quante AUDI (indipendentemente dal modello) ho venduto nella fattura nr. 1 e quante nella fattura nr. 2 e via dicendo.
    Riferendomi all'esempio fatto vorrei vedere qualcosa tipo questo:
    Data: 15/12/2021
    1 Fattura: BMW 3 - AUDI 2
    2 Fattura: BMW 3 - AUDI 3 - VOLVO 2
    Questo che hai scritto adesso che nesso ha con le tabelle C e VOLI?
    Hai strutturato le tabelle in maniera NORMALIZZATA? Potresti mostrare una immagine della Finestra Relazioni per comprendere meglio il tutto?
  • Re: Come creare report con dati filtrati e totali

    Gianni55 ha scritto:


    Per la gioia del mio dietologo sono diventato trasparente
    Mah hai letto quello che ho scritto io:
    In Excel scrivi:
    =SE(C2:C140 =1;CONTA.SE(B2:B140;"SH*");FALSO)
    In Access:
    SommaT4:iif([IdPar]=1;1;0).
    Il tuo Se in access si traduce in iif, però se devi continuare a scrivere in Access devi abbandonare definitivamente Excel ed imparare/approfondire Access, che in comune con Excel ha solo una visione tabellare dei dati.

    Nb ho nominato il campo "SommaT4" ma questo è solo il NomeCampo e non una funzione .
    Buongiorno Gianni,
    scusami per la tardiva risposta.
    Ti ho letto eccome!!!
    Praticamente hai risolto il mio problema
    Ho solo modificato quello che mi hai suggerito perché il tipo paracadute è composto da una parte diciamo fissa es. NAV, SH, T e da una numerica che identifica uno specifico paracadute quindi NAV2,NAV5, SH1,SH10, T2,T4 ecc. ecc.
    Pertanto, nella Query ho creato tanti campi quanti sono i paracadute che utilizziamo scrivendo il codice in questo modo:
    SommaNAV: IIf([c9] Like 'NAV*';1;0)
    Non so se sia il sistema più corretto ma funziona!!!

    Grazie grazie!!!
    Allegati:
    31594_c9e39ffd63135ea885b6a2557b730f5e.jpg
    31594_c9e39ffd63135ea885b6a2557b730f5e.jpg
  • Re: Come creare report con dati filtrati e totali

    napkab ha scritto:


    ...Non so se sia il sistema più corretto ma funziona!!!...
    Non è il sistema corretto, perché viene violata la . La colonna [tipo paracadute] andrebbe divisa in due colonne (ad esempio [Modello] e [Numero]). Poi puoi fare una SELECT con un COUNT ed il GROUP BY su "[Sortita], [Modello]".
  • Re: Come creare report con dati filtrati e totali

    Sgrubak ha scritto:


    napkab ha scritto:


    ...Non so se sia il sistema più corretto ma funziona!!!...
    Non è il sistema corretto, perché viene violata la . La colonna [tipo paracadute] andrebbe divisa in due colonne (ad esempio [Modello] e [Numero]). Poi puoi fare una SELECT con un COUNT ed il GROUP BY su "[Sortita], [Modello]".
    Ciao,
    grazie per il tuo commento. Mi hai dato uno spunto per studiare qualcosa che non conosco anche se mi sembra di capire che stiamo parlando dell' ABC .
Devi accedere o registrarti per scrivere nel forum
12 risposte