Condividi tramite

Funzione DateDiff non presente

Anonimo
2018-03-27T10:46:50+00:00

Buongiorno,

sto cercando di creare una query di immissione record derivata da una tabella nella quale esiste un campo con valore calcolato. Dovendo calcolare la durata di un evento ho cercato nel generatore di espressioni la funzione DateDiff non trovandola. La mia versione di Access è quella abbinata all'abbonamento Office 365. Nell'elenco sono presenti solo le funzioni predefinite. Qualcuno sa spiegarmi cortesemente dove sbaglio? Grazie per la risposta

Microsoft 365 e Office | Access | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2018-03-30T12:08:04+00:00

ciao Sebastiano,

problemi di normalizzazione a parte, per ottenere quanto voluto, crea una query ed imposta un campo calcolato in cui invochi la formula

DiffOra: cdate([ora fine]-[ora inizio])

Aiutati con la griglia di struttura.

il campo calcolato impostato direttamente nelle tabelle può essere un aiuto, ma visto che sei all'inizio, credo che nel tuo modo di ragionare, tu ti stia raffrontando alla tabella come ad foglio elettronico di Excel.

Le regole che governano un db relazione sono profondamente diverse.

Elimina quindi il campo calcolato nella tabella e esegui la query ogni qual volta necessiti di valutare la differenze tra le ore.

Per come è impostato il tutto non credo ci siano casi oltre le 24 ore, altrimenti serve agire in modo diverso.

Elimina sempre gli spazi nei nomi dei campi, in quelli di tabelle, maschere o controlli, non è una buona pratica.

Ciao, Sandro.

La risposta è stata utile?

0 commenti Nessun commento

5 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2018-03-30T07:30:10+00:00

    Buongiorno Salvatore,

    ecco i print screen del foglio di gestione che sto creando. La durata dell'intervento alla fine l'ho tradotta con la formula che vedi nella seconda immagine. Spero possa essere chiaro.

    Grazie mille

    Sebastiano

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2018-03-28T13:49:23+00:00

    ciao Salvatore,

    credo possa esserci qualche altro problema a questo punto,

    puoi mostrare la tabella e il tentativo di applicare al funzione dateDiff ?

    Grazie, Sandro.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2018-03-28T07:14:19+00:00

    Buongiorno Sandro,

    intanto grazie per l'aiuto... onestamente lavoro poco con Access e non ho dimistichezza con impostazioni che vadano troppo in la rispetto alle standard. Facendo come hai consigliato trovo spuntato :

    -Visual Basic fo Application

    -Microsoft Access 16.0 object library

    -Microsoft Office 16.0 Access Database engine object library

    -OLE Automation

    tutto il resto è disabilitato, e si parla di un sacco di riferimenti che io purtroppo non conosco. Dovrei aggiungere qualcosa?

    Grazie ancora per il supporto

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2018-03-27T11:47:05+00:00

    ciao Sebastiano,

    prova a controllare se ti mancano dei riferimenti...

    dall'editor di VBA striumenti --> riferimenti.

    Facci sapere.

    Ciao, Sandro.

    La risposta è stata utile?

    0 commenti Nessun commento