Newsgroup: it.comp.appl.access
Titolo: Re: [SQL] Operatore Between...And

 Ciao Giorgio
Ciao Giorgio, innanzitutto mi fà piacere sentirti.
Allora il formato sul quale hai dubbi in realtà è il formato ISO
"\#yyyy\-mm\-dd\#" e, da quanto ne sò, è compatibile con tutti
i Database.
In ogni caso il problema non era quello ma proprio il fatto della Data
comprensiva di hh:mm:ss, dovuta all'uso di Now() come DefaultValue
di un campo Data.
Ovviamente ho risolto con il tuo suggerimento, ma ora andrò a Formattare
il DefaultValue a Format(Now();"gg/mm/aaaa"), per ovviare ad altri
inconvenienti
Grazie
-- 
@Alex (Alessandro Baraldi)
---------------------------------------------------------------------------
http://www.sitocomune.com/
http://www.mantuanet.it/alessandro.baraldi/
---------------------------------------------------------------------------

Mi risulta dall'Help, e spero mi smentiate, che l'operatore in questione
restituisce l'intervallo COMPRESO.
Ora è quasi un'ora che provo questo codice e mi esclude gli estremi:
   Dim strDal     As String
   Dim strAl      As String
   Dim strFilt    As String
   strDal = Format(Nz(Me.txtDal,#1/1/2004#), "\#yyyy\-mm\-dd\#")
   strAl = Format(nz(Me.txtAl,Date), "\#yyyy\-mm\-dd\#")
   strFilt = "[Data] Between " & strDal & " AND " & strAl
   Me.frmSubSearch.Form.FilterOn = False
   Me.frmSubSearch.Form.Filter = strFilt
   Me.frmSubSearch.Form.FilterOn = True
Ora ho inserito in data Odierna 2 movimenti ma il Filtro me li elimina.
Dall'Help:
----------------------------------------------------------------------------
-----------------------
Osservazioni
Se il valore di espr è compreso tra valore1 e valore2 (inclusi),
l'operatore Between...And restituisce True; altrimenti restituisce False.
----------------------------------------------------------------------------
-----------------------
Che succede...?



Ciao @Alex,
non sono sicuro che quel formato data sia valido,
prova con aaaa/mm/gg
---------------
strDal = Format(Nz(Me.txtDal,#1/1/2004#), "\#yyyy/mm/dd\#")
strAl = Format(nz(Me.txtAl,Date), "\#yyyy/mm/dd\#")
---------------
nel caso il formato da te usato andasse bene prova a controllare che nella
tua tabella il campo Data non contenga valori con la parte ora.
Nel caso di inquinamento della parte ora puoi fare cosě
---------
strFilt = "Fix([Data]) Between " & strDal & " AND " & strAl
---------
Ciao Giorgio

 i Database.
a me sembra il formato ODBC canonico senza la parte dell'ora mentre l'ISO
8601 prevede la sintassi yyyy/mm/dd hh:mm:ss
Sia quel che sia adesso so che Access funziona anche con yyyy-mm-dd
:-)
Ciao Giorgio

 Ciao Giorgio
Sinceramente, a meno di malintesi, è la 2° volta che ho conferma del Formato
ISO, una
sul NG di VB da Zanna e l'altra sul Sito di Karl alla Faq 6.8
http://www.donkarl.com/it/
Non saprei in effetti quale sia il nome corretto, ma ti confermo che
funziona.
Buona domenica


 funziona.
sul fatto che funzioni mi basta la tua parola :-)
Ciao Giorgio

 funziona.
Scrivo "formato ISO" perché questo formato segue le norme
della regola ISO 8601. Vedi p.e.
http://www.w3.org/QA/Tips/iso-date
http://www.cl.cam.ac.uk/~mgk25/iso-time.html
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/biztalks/htm/lat_xmltools_trouble_ebng.asp
O se vuoi comprare l'originale ;-):
http://www.iso.org/iso/en/CatalogueDetailPage.CatalogueDetail?CSNUMBER=40874&ICS1=1&ICS2=140&ICS3=30&showrevision=y&scopelist=CATALOGUE
Io quasi sempre consiglio questo formato perché (in contrario ai
formati nazionali) è univoco, e certo perché abbiamo già piu che
abbastanza influenza americana. ;-)
-- 
cu
Karl
*********
Access FAQ: 
www.donkarl.com/it
+info sulla prima Conferenza Italiana per Sviluppatori di Access (CISA1)