Newsgroup: it.comp.appl.access
Titolo: OT Traduzione FAQ 4.7

**********************
4.7 Change the sort order in a form
Problem
You want to change the sort order in a form without using the
Sort Ascending/Descending buttons in the toolbar but
e.g. on your own button's click.
Solution
Either you create an SQL string with an ORDER BY clause and
use it as recordsource of the form or you set the form properties
"OrderBy" and "OrderByOn" via code:
Example with SQL string:
Dim strSQL As String
strSQL = "SELECT * FROM tbl_Clients ORDER BY tbl_Clients.ForeName;"
Me.RecordSource = strSQL
If you are not very experienced with SQL or if the SQL statement is more
complex than the easy way is to create a query in the query designer of
Access and copy the SQL statement from the SQL view of the query
designer.
To sort by changing the record source usually is the better way.
Not only because it looks more professional but also because
if you sort using the form properties (no matter if in the user
interface or by code) Access saves the last sort setting in the
form property "OrderBy". Nevertheless some examples:
' sort in ascending order after the field ForeName
OrderBy = "ForeName"
OrderByOn = True
' descending
OrderBy = "ForeName desc"
OrderByOn = True
Access saves the last sorting. To prevent it from being used
when you open the form next time you can write the following line
in the code of the form's open event:
Me.OrderBy = ""
see also 
http://support.microsoft.com/?kbid=207769
***********************
-- 
cu
Karl
*********
Access FAQ: 
www.donkarl.com/it

 ***********************
-- 
Pablitomf (Maurizio Facciuti)
“Quando non ti eserciti ricorda che qualcuno in qualche posto si sta
allenando e, quando lo incontrerai, ti batterà”.
Ed Macauley 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 ha scritto nel messaggio
news:2vh7bcF...@uni-berlin.de...

**********************
4.7 Cambiare l'ordinamento di una maschera
Problema
Vuoi cambiare l'ordinamento di una maschera senza usare i pulsanti
Ordinamento crescente e/o Ordinamento decrescente della barra dei comandi,
ma ad esempio con un clic su un tuo pulsante di comando.
Soluzione
Di due l'una: o crei una stringa SQL contenente una clausola ORDER BY e
quindi la usi come origine record della maschera, oppure imposti
adeguatamante con il codice VBA le proprietà "OrderBy" e "OrderByOn" della
maschera:
Esempio con la stringa SQL:
Dim strSQL As String
strSQL = "SELECT * FROM tbl_Clients ORDER BY tbl_Clients.ForeName;"
Me.RecordSource = strSQL
Se non hai molta esperienza con il linguaggio SQL o se l'espressione SQL è
troppo complessa, allora la maniera più facile è quella di creare una query
con la griglia di struttura si Access e poi copiare il codice SQL dalla
visualizzazione SQL della struttura della query.
Effettuare l'ordinamento cambiando l'origine record della maschera è
normalmente la migliore maniera per risolvere il problema. Non solamente
perché risulta più professionale ma anche perché se tu ordini impostando le
proprietà della maschera (non importa se nell'interfaccia utente o da codice
VBA) Access salva l'ultimo criterio di ordinamento nella proprietà
"OrderBy". Ciò nonostante ecco alcuni esempi:
'Ordina in maniera ascendente per il campo ForeName
Me.OrderBy = "ForeName"
Me.OrderByOn = True
' Ordinamento decrescente
Me.OrderBy = "ForeName desc"
Me.OrderByOn = True
Access salva gli ultimi criteri di ordinamento. Per prevenire gli effetti
indesiderati di ciò, la prossima volta che aprirai la maschera devi generare
la seguente riga di codice a fronte dell'evento "Su apertura" della
maschera:
Me.OrderBy = ""
vedi anche 
http://support.microsoft.com/?kbid=207769
***********************
-- 
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

 Me.OrderBy = ""

4.7 Cambiare il tipo di ordinamento in una maschera 
Problema
Vuoi cambiare il tipo di ordinamento in una maschera senza usare i pulsanti
Ordinamento crescente /Ordinamento decrescente nella barra dei comandi ma
p. e. con un click di un tuo pulsante.
Soluzione
O crei una stringa SQL con una clausola ORDER BY e la usi come origine
record della maschera, oppure imposti le proprietà "OrderBy" e "OrderByOn"
della maschera, via codice:
Esempio con stringa SQL:
Dim strSQL As String
strSQL = "SELECT * FROM tbl_Clienti ORDER BY tbl_Clienti.Cognome;"
Me.RecordSource = strSQL
Se non hai molta esperienza con il linguaggio l’SQL o se l'espressione
SQL è più complicata, allora la maniera comoda è quella di creare una
query nella griglia di struttura query di Access e copiare il codice SQL
dalla vista SQL della struttura query.
Di solito il miglior modo per effettuare l’ordinamento dei record e quello
di cambiarne l’origine.
Non solo perché appare più professionale ma anche perché se effettui
l’ordinamento utilizzando le proprietà della maschera (non importa se
nell'interfaccia utente o da codice) Access salva l'ultimo ordinamento
impostato nella proprietà "OrderBy" della maschera. 
Tuttavia alcuni esempi:
'Ordinamento ascendente per il campo Cognome
Me.OrderBy = "Cognome"
Me.OrderByOn = True
'Ordinamento decrescente
Me.OrderBy = "Cognome desc"
Me.OrderByOn = True
Access salva l’ultimo ordinamento. Per prevenire che avvenga questo, 
quando la prossima volta apri la maschera devi scrivere la seguente riga 
nel codice dell'evento "Open" della maschera:
Me.OrderBy = ""
vedi anche 
http://support.microsoft.com/?kbid=207769
--
rgrds
SC
-- 


 impostato nella proprietà "OrderBy" della maschera.
n.d.r:   questo non succede se il Front-End è in formato .MDE ...

> (e.g. ????)
p.e.
per esempio
MAssimiliano

 per esempio
Sě. Le due abbreviazioni "inglesi" (infatti le hanno rubate dall latino;-)
che uso frequentemente nelle traduzioni qui sono:
e.g. = exempli gratia (lat.), ma l'inglese dice: for instance --> p.e.
i.e. = id est (lat.), ma l'inglese dice: that means/that is to say --> cioč
-- 
cu
Karl
*********
Access-FAQ 
http://www.donkarl.com/it