Access 2013: selezione record attraverso data

di il
3 risposte

Access 2013: selezione record attraverso data

Salve,
sono nuovamente a chiedere il vostro aiuto.
Ho una tabella con i seguenti campi:

DATA - SECONDI - QTA

la data è in formato gg/mm/aaaa

io dovrei realizzare una query che mi selezioni tutti i record dove il campo SECONDI è compreso tra due numeri (ad esempio >=14400 e <50400) e il campo DATA corrisponda ai Festivi, ovvero tutte le domeniche e tutte quelle date, dell'anno in corso, che sono festività, tipo 01/01/2015, 06/01/2015, 25/12/2015, 26/12/2015 ecc.

Ho provato a realizzarla e se mi limito alle sole date funziona, il problema è che non riesco a fargli trovare le domeniche. Forse devo cambiare il formato data o aggiungere un campo con il giorno corrispondente alla data?

Grazie
Leonardo

3 Risposte

  • Re: Access 2013: selezione record attraverso data

    Io avrei risolto così ma sono sicuro che esiste una soluzione più agevole:
    Ho realizzato una tabella con dentro tutte le date del 2015 che sono domenica o festività.
    La cosa noiosa è che tutti gli anni devo modificare la tabella con le festività e le domeniche dell'anno in corso.

    Grazie
    Leonardo
  • Re: Access 2013: selezione record attraverso data

    leonardocarrani ha scritto:


    Ho provato a realizzarla e se mi limito alle sole date funziona, il problema è che non riesco a fargli trovare le domeniche. Forse devo cambiare il formato data o aggiungere un campo con il giorno corrispondente alla data?
    Per trovare i giorni festivi hai già parecchio lavoro fatto qui

    Festivi e finesettimana italia
    Non so se questa volta riesci a cavartela con una query, o meglio: potresti anche cavartela con una query ma dovrai studiare una funzione ben fatta (prendendo spunto dai link precedenti, più dal primo che dal secondo) alla quale passare la data.
    Potresti aggiungere alla funzione di @Alex un
    If Weekday(myDate, vbMonday) = 7 Then Festivo = True
    La query per cercare solo i festivi
    SELECT ... FROM ... WHERE festivo([campodata]) = False
  • Re: Access 2013: selezione record attraverso data

    Per filtrare le domeniche:
    1. Vai in visualizzazione struttura query
    2. Nel primo campo vuoto della griglia, scrivi al primo rigo:
    NumeroGiornoSettimana: Weekday([Data];2)
    il numero 2 serve a dare la numerazione dei giorni settimanali in modo che Lunedì=1, quindi Domenica=7
    3. Nella stessa colonna, in corrispondenza di Criterio, scrivi:
    =7
    4. Salva tutto
Devi accedere o registrarti per scrivere nel forum
3 risposte