Newsgroup: it.comp.appl.access
Titolo: casella di riepilogo con filtro e ordinamento su casella di testo e casella combinata

Buongiorno.
In una form di ricerca anagrafica ho due caselle combinate "cboFiltro" e "cboOrdine" entrambe con i seguenti elenchi valori: i valori sono: "descrizione", "codice", "Partita Iva" e "Codice Fiscale".
In base al valore selezionato nella cboFiltro, attivo il focus sulla casella di testo corrispondente.
Inserendo nella casella di testo un valore, il codice su evento "modifica" mi restitutisce nella casella di riepilogo l'elenco filtrato.
Io vorrei però ordinare tale elenco oltre che filtrato anche ordinato in base al valore della combo "cboOrdine".
Il codice è:
Dim strR As String
Dim strSQL As String
strR = Me!txtRicerca.Text
If Not IsNull(Me!txtRicerca.Text) Then
    strSQL = "SELECT Space(6-Len(Format([idanagrafica],'#,##0'))) & Format([idanagrafica],'#,##0') AS cod, [ragionesociale1] & ' ' & [nome] AS ragionesociale, ALIAS, partitaiva, codfisc " & _
    "FROM [tblAnagrafica] " & _
       "WHERE ([ragionesociale1] Like " & Chr$(34) & _
strR & "*" & Chr$(34) & ")" & _
" ORDER BY tblAnagrafica.[ragionesociale1], tblAnagrafica.[nome];"
    Me!Elenconominativi.RowSource = strSQL
    Me!Elenconominativi.Requery
    Me!txtRicerca = strR
    Me!txtRicerca.SetFocus
    Me!txtRicerca.SelStart = 255
End If
 
Come devo sostituire la riga "ORDER ..... " inserendo come parametro la casella combinata cboOrdine?
Scusate la lunghezza del post.
Grazie.
Giuseppe

 Scusate la lunghezza del post.
 
Se ti capisco bene puoi provare di sostituire
" ORDER BY tblAnagrafica.[ragionesociale1], tblAnagrafica.[nome];"
con
" ORDER BY " & Me!cboOrdine
o se veramente hai spazi nei nomi
" ORDER BY [" & Me!cboOrdine & "]"
 
-- 
Ciao
Karl
*********
Access FAQ:  
http://www.donkarl.com/it
 
Access Lobby: 
http://www.AccessDevelopers.org
 


Ciao Karl, grazie per la risposta.
Ma la casella combinata cboOrdine non è associata ad un campo della tabella ma ha come elenco valori:
"descrizione", "codice", "Partita Iva" e "Codice Fiscale".
sostituendo con il tuo codice, appena digito nella casella di testo mi appare una msgbox con titolo "immettere valore parametro" e dentro "codice" con il campo in cui digitare il valore.
Giuseppe

 sostituendo con il tuo codice, appena digito nella casella di testo mi appare una msgbox con titolo "immettere valore parametro" e dentro "codice" con il campo in cui digitare il valore.
 
Se i testi nella combo non sono uguali ai nomi dei campi nella tabella 
puoi impostare il numero delle colonne della combo a 2 e aggiungere i 
nomi dei campi all'elenco valori:
 
"NomeCampoDescrizioneNellaTabella";"descrizione";"NomeCampoCodiceNellaTabella";"codice";"partitaiva";"Partita 
Iva";"codfisc";"Codice Fiscale"
 
Se "codice" non è un campo nella tabella ma corrisponde alla colonna 
"cod" della stringa SQL dovresti ripetere l'espressione. In alternativa 
nel ORDER BY puoi anche usare la posizione della colonna nel SELECT, 
cioè elenco valori:
 
"NomeCampoDescrizioneNellaTabella";"descrizione";"1";"codice";"partitaiva";"Partita 
Iva";"codfisc";"Codice Fiscale"



Perfetto.
Grazie Karl.
Giuseppe