Se ho compreso bene, pur funzionando impeccabilmente, entrambe le istruzioni nel blocco contenevano
ben due condizioni assolutamente inutili (in rosso)
If Len(Me!cboNatura.Value & vbNullString) > 0 And Me!cboNatura.Value = "Contabili" And Me!cboNatura.Value <> "Tutti" Then _
strWH = strWH & "NC_Contributi=-1" & " AND "
If Len(Me!cboNatura.Value & vbNullString) > 0 And Me!cboNatura.Value = "Contributi" And Me!cboNatura.Value <> "Tutti" Then _
strWH = strWH & "NC_Contributi=0" & " AND "
Me!cboNatura.Value & vbNullString) > 0
Me!cboNatura.Value <> "Tutti"
poiché, una volta assegnati i valori booleani nelle due istruzioni:
If Me!cboNatura.Value = "Contabili" Then strWH = strWH & "NC_Contributi=0" & " AND "
If Me!cboNatura.Value = "Contributi" Then strWH = strWH & "NC_Contributi=-1" & " AND "
La prima condizione esclude la seconda e "Tutti"
La seconda eslude la prima e, anch'essa, "Tutti"
L'assenza di selezione corrispondente ad una delle due istruzioni, conferma la validità di "tutti" (FilterOn=false), laddove selezionato in cbo.
Utilizzare i campi testuali spesso comporta dei problemi nel tempo… i campi testuali sono per lo più usati a descrizione, per far capire l'argomento che risulta più assimilabile al concetto che un numero…
Il problema a è che se una definizione o una attribuzione descrittiva domani cambia… tu non trovi più nulla o sei costretto a modificare tutte le descrizioni.
Meno male!! …temevo altro tipo di problemi.
L'elenco valori lo utilizzo solo laddove sono certo al 99% di non dover mai apportare future modifiche.
Nel caso: cboMovimento (Entrata/Uscita); cboConto(Cassa/Banca) e appunto cboNatura (contabile/contributi, ossia non contabile)
Tu non devi dare per assunto che quello che ti suggerisce un'altro sia la bibbia….devi capire in modo critico per crescere…
Con una eccezione però: dove non capisco, nessuno può dissuadermi dalla validità dell'equazione PadreEterno : Creato = @Alex : VBA
Grazie mille della spiegazione.
Ciao