Filtro per data

di il
5 risposte

Filtro per data

Ciao,

per filtrare per DATA con me.cboEmail sia per i records sia per la casella combinata per ricerca, inserisco questi codici:

 con questi codici funzionano ma non per tutte le date, ad esempio 10/04/2024 viene filtrato come inesistente mentre ci sono e non capisco dove sta il problema? Se avete suggerimenti migliori ve ne sarei grato.

If Me.FilterOn = False Then
    Me.Filter = "[DataEmail]=#" & Me.cboEmail & "#"
    Me.cboNominativo.RowSource = "SELECT Nominativi.ID, [Cognome] & ' ' & [Nome] AS Nominativo, Nominativi.DataEmail FROM Nominativi WHERE (((Nominativi.DataEmail) Like #" & Me.cboEmail & "#)) ORDER BY [Cognome] & ' ' & [Nome], Nominativi.DataEmail;"

    Me.FilterOn = True
Else
    Me.FilterOn = False
    
    Me.cboNominativo.RowSource = "SELECT Nominativi.ID, [Cognome] & ' ' & [Nome] AS Nominativo, Nominativi.DataEmail FROM Nominativi ORDER BY [Cognome] & ' ' & [Nome], Nominativi.DataEmail; "
End If

5 Risposte

  • Re: Filtro per data

    17/04/2024 - BLUES ha scritto:


    ad esempio 10/04/2024 viene filtrato come inesistente mentre ci sono e non capisco dove sta il problema?

    …può darsi che il sistema interpreti questa data come 4 ottobre 2024. Devi fare in modo di essere sicuro che hai il formato gg/mm/aaaa. Prova a indagare tra le proprietà del campo in tabella, oppure devi “aggiustartelo” in VBA (ma non ricordo come si fa…).

  • Re: Filtro per data

    Io ho provato di tutto anche in formato tipo:

    Format(Me.cboEmail, "dd/mm/yyyy")

    ho pensato che forse in VBA il formato inzia prima il mese e poi il giorno

    Format(Me.cboEmail, "mm/dd/yyyy")

    niente da fare… non filtra nemmeno la maschera dei records

    secondo me sta nella DataEmail che non coincide con la cboEmail.

  • Re: Filtro per data

    Hai controllato la proprietà Formato in tabella e anche in maschera del campo di tipo Data? Impostala in ogni caso gg/mm/aaaa.

  • Re: Filtro per data

    Il problema della data è vecchio come Access… e le soluzioni che hai accennato NON sono complete e di conseguenza non corrette.

    Prova questa:

    Me.Filter = "[DataEmail]=" & clng(Me.cboEmail)

    oppure usando la versione che avevi tentato tu ma corretta:

    Me.Filter = "[DataEmail]=" & Format(Me.cboEmail, "\#yyyy\-mm\-dd\#")

    Saluti

  • Re: Filtro per data

    17/04/2024 - @Alex ha scritto:


    Il problema della data è vecchio come Access… e le soluzioni che hai accennato NON sono complete e di conseguenza non corrette.

    Prova questa:

    Me.Filter = "[DataEmail]=" & clng(Me.cboEmail)

    oppure usando la versione che avevi tentato tu ma corretta:

    Me.Filter = "[DataEmail]=" & Format(Me.cboEmail, "\#yyyy\-mm\-dd\#")

    Saluti

    Ciao Alex, ho risolto dal tuo suggerimento quella con Format… ti ringrazio tanto.

Devi accedere o registrarti per scrivere nel forum
5 risposte