Campo data

di il
5 risposte

Campo data

Buongiorno a tutto il forum, ho un piccolo problemino riguardo un campo data:
ho un campo data in una tabella che riporto su un report per la stampa. vorrei che questo campo si aggiornasse automaticamente alla data del giorno in cui invio la stampa. con la funzione =date() inserita come valore predefinito in tabella mi restituisce la data del giorno corrente ma se devo stampare il report dopo es. dopo 3 giorni la data rimane quella dei 3 giorni prima. Come posso risolvere?

5 Risposte

  • Re: Campo data

    Se il giorno 20/7/2012 tu hai inserito un valore in tabella, tale sarà la data di quel dato che hai inserito in quel giorno.
    Il giorno 23/7/2012 tu decidi di stampare. Devi creare nel report un campo indipendente e scriverci dentro =Now(). Mi sa che Access crea automaticamente questo campo se hai utilizzato la procedura guidata report.
  • Re: Campo data

    Spettacolo osvaldo funziona , solo che mi compare anche l'ora che non ci deve essere hai qualche suggerimento?
  • Re: Campo data

    In visualiazione struttura report, clicca sul campo con il mouse destro e scegli Proprietà. Scheda Tutte,
    Formato: scegli tu un formato, ad es. Data breve oppure Data in cifre
  • Re: Campo data

    Osvaldo e perfetto ti ringrazio
  • Re: Campo data

    Fate attenzione... il suggerimento di usare NOW() è pericoloso e la formattazione del Campo come suggerita da Osvaldo ne aggrava i rischi...!

    L'esempio banale è questo...
    Verifica se la data di oggi #03/08/2012# è uguale a Now()...!!!
    
    If #03/08/2012#=Now() Then
       Msgbox "Alex si è sbagliato..."
    Else
       MsgBox  "Alex aveva ragione..."
    End If
    Otterrete sempre il Messaggio n°2 ovviamente... almeno se eseguite la routine n volte oggi...

    Serve capire se chi usa un campo Data ha bisogno anche di hh:mm:ss come vi siete accorti...!
    Se non ne hai bisogo, mascherarli con la formattazione non ha senso...!

    Invece di usare Now() si deve usare un'altra funzione che evita l'attribuzione di hh:mm:ss

    Ci sono 2 modi per farlo:
    1° Date()
    2° Fix(Now())

    Io uso la 2° di solito...
    Quindi se fate la riprova...
    
    If #03/08/2012#=Fix(Now()) Then
       Msgbox "Alex aveva ragione..."
    Else
       MsgBox "Alex si è sbagliato..."
    End If
    Ora valutate voi quello che vi serve veramente...!
Devi accedere o registrarti per scrivere nel forum
5 risposte