CALCOLI TRA DATE

di il
17 risposte

CALCOLI TRA DATE

Buongiorno.
Rieccomi a voi con un nuovo problema.
Nella maschera che ho creato per ogni fattura, ho inserito un campo DATA FATTURA ed un campo DATA PAGAMENTO.

Ora volevo aggiungere un campo dove poter visualizzare i giorni, GIORNI TRASCORSI, tra dalla data di fattura e quella odierna ma che tenesse in considerazione anche il campo DATA DI PAGAMENTO.

Mi spiego meglio con un esempio:
se nel campo DATA FATTURA ho la data 01/01/22 e la data odierna è 10/01/22 e se nel campo DATA DI PAGAMENTO non c'è alcuna data, nel campo GIORNI TRASCORSI mi si deve visualizzare il conteggio dei giorni.
Al contrario, se nel campo DATA DI PAGAMENTO ci fosse una data uguale od inferiore alla data odierna il risultato nel campo GIORNI TRASCORSI dovrà essere, ad esempio, "PAGATA".

Ecco, io non riesco a fargli fare questi conteggi.
Ho provato diversi conteggi direttamente sul campo anche utilizzando la funzione IF ma sicuramente sbaglio qualcosa.....

Sono 2 ore che ci sto impazzendo senza cavare il ragno dal buco e se qualcuno mi potesse dare un suggerimento gliene sarei davvero grato.

17 Risposte

  • Re: CALCOLI TRA DATE

    
    Me.TempoTrascorso=nz(me.data_pagamento,date())-me.data_fattura
    
    poi puoi migliorarla inserendo controlli sulla presenza della data fattura
  • Re: CALCOLI TRA DATE

    Ti ringrazio...ma questo codice lo devo inserire direttamente nel campo?
    Perchè ho provato ma mi esce #NOME.
    Nel codice, cosa sarebbe "nz"?
  • Re: CALCOLI TRA DATE

    Https://support.microsoft.com/it-it/office/funzione-nz-8ef85549-cc9c-438b-860a-7fd9f4c69b6c
  • Re: CALCOLI TRA DATE

    Scusami Oregon ma essendo io alle prime armi, non capisco i tuoi suggerimenti.
    Non potresti essere più esaustivo nelle spiegazioni?
    Ti ringrazio

    P.s. ...ora vado in pausa pranzo per cui fino alle 14 non risponderò
  • Re: CALCOLI TRA DATE

    Hai chiesto cosa è nz e ti ho risposto su cosa leggere per sapere cosa è nz. Ma devi leggere
  • Re: CALCOLI TRA DATE

    Beasissi cerca di non offenderti e prendila come una critica costruttiva ...
    quando qualcuno ti propone qualcosa (qui nel forum) che tu non conosci non fare subito una domanda in merito, prova prima a cercare online, esiste google e ti assicuro che si trova tutto, basta cercarlo. Oltretutto Oregon ti ha pure postato il link ... l'hai aperto?

    Prescindendo da tutto questo e dall'evidenza di una tua marcata carenza di basi di linguaggio vba ... che sarebbe richiesto...
    non ha molto senso mettere un campo così calcolato in tabella quindi la risposta è SI deve essere il valore da attribuire al controllo (non campo) che hai sulla maschera (lo noti dal "me.xxx" che indica proprio che si sta parlando di un controllo di una form (o report)
  • Re: CALCOLI TRA DATE

    La conoscenza del VBA , ovviamente, all'inizio è molto ridotta...si impara man mano che la si usa ma avendo io iniziato da poco non posso conoscere tutte le funzioni del VBA di Access( quello di excel lo conosco un pò di piu ma è quasi completamente differente).

    Comunque, a parte questo, il codice che mi ha suggerito Oregon NON funziona...mi da quell'errore che ho segnalato ed alla mia domanda come mai non funzionasse non ho ottenuto risposta.
    La domanda su che cosa fosse "nz" era in più per curiosità ed ampliare la mia conoscenza, ma quella primaria, di domanda, era l'altra.
  • Re: CALCOLI TRA DATE

    il codice che mi ha suggerito Oregon
    Io non ti ho suggerito nessun codice. Ti consiglio di fare più attenzione.
    La domanda su che cosa fosse "nz" era in più per curiosità ed ampliare la mia conoscenza
    Io prendo sul serio le domande e ti ho risposto. Comunque, prego.
  • Re: CALCOLI TRA DATE

    SCUSAMI E QUESTO POSTATO DA TE NON ERA UN CODICE?
    Me.TempoTrascorso=nz(me.data_pagamento,date())-me.data_fattura
  • Re: CALCOLI TRA DATE

    RIPETO ... fai ATTENZIONE. Devi solo leggere CHI posta. Non è difficile.
  • Re: CALCOLI TRA DATE

    Avrai un controllo sulla tua maschera in cui visualizzare il tempo in giorni trascorso no?
    supponiamo che questo CONTROLLO si chiami "TempoTrascorso" e che sia i campi sia i controlli delle date di pagamento e fattura si chiamino data_pagamento e data_fattura, ok?
    la formula che devi applicare è
    
    nz(me.data_pagamento,date())-me.data_fattura
    
    cosa "non va?"
    facciamo così ... inizia a postare un pò di codice tuo, indicando dove l'hai messo (form, evento, ...)

    PS: per inciso NZ (ti bastava consultare la guida o cercare su google o guardare il link suggerito) ha 2 parametri e restituisce il primo o il secondo se il primo è nullo
  • Re: CALCOLI TRA DATE

    Grazie muttley
    Allora io ho un campo di controllo GIORNI_TRASCORSI, poi ho un campo DATA_FATTURA, un campo DATA_INCASSO ed un campo SITUAZIONE

    Io vorrei che quando nel campo GIORNI_TRASCORSI, rispetto alla data fattura inserita si superano i 60 giorni nel campo SITUAZIONE deve venir scritto "SCADUTA" , a patto però che nel campo DATA_INCASSO non ci sia nessuna data.
    Nel momento però che inserirò una data, sia questa superiore od inferiore ai 60 giorni, nel campo SITUAZIONE deve venirci " PAGATA"

    E' complicato specie se rapportato al campo DATA_INCASSO
  • Re: CALCOLI TRA DATE

    O addirittura potrebbe andarmi bene anche un pulsante collegato ad una query che mi fa tutte le verifiche di cui sopra.
    Quando voglio vedere le fatture scadute, premo il pulsante e la query me le visualizza.
    Ma questo, per me, è ancora piu complicato
  • Re: CALCOLI TRA DATE

    beasissi ha scritto:


    La conoscenza del VBA , ovviamente, all'inizio è molto ridotta...si impara man mano che la si usa ma avendo io iniziato da poco non posso conoscere tutte le funzioni del VBA di Access( quello di excel lo conosco un pò di piu ma è quasi completamente differente).
    La funzione NZ è presente da sempre nel VBA, di Access, ed anche in quello di EXCEL e la modalità di accesso alla guida in linea è la medesima, ne consegue che pur non conoscendo tutto, almeno il metodo per fare ricerca lo devi aver appreso sul VBA di EXCEL... usa quel metodo anche per il VBA di Access.

    Se invece in Excel usavi solo le funzioni semplificate proposte, allora chiariscilo che non è saper usare il VBA di EXCEL...!

    P.S. la funzione NZ si comporta UGUALE in tutti i VBA(Office) come tutte le funzioni BASE comuni ai VBA.
Devi accedere o registrarti per scrivere nel forum
17 risposte