Newsgroup: it.comp.appl.access
Titolo: Filtrare query in base a selezione su casella di riepilogo e  creazione nuova tabella

Ciao a tutti.
Vi chiedo un grosso favore perchè non riesco più a venire fuori da
questo problema.
Ho bisogno di creare una tabella tramite una queri di creazione
tabella, nella quale ci devono essere dei criteri che variano di volta
in volta e devono essere presi da una casella di riepilogo.
La situazione è questa.
Ho una Tabella che si chiama "Tgruppo" che contiene un elenco di
gruppi, appunto, e una tabella che si chiama "Tproblema", che contiene
contiene l'elenco dei problemi di ogni gruppo e sottogruppo, ecc...
Io devo poter selezionare tramite una casella di riepilogo uno o più
gruppi.
e fin qui ci siamo.
ciò che io seleziono deve servire come criterio per una query di
creazione tabella
Ciò che ho fatto è questo
Private Sub Comando15_Click()
    Dim strLista As String
    Dim varItem As Variant
    If Me!Elenco5.ItemsSelected.Count = 0 Then Exit Sub
    For Each varItem In Me!Elenco5.ItemsSelected
        strLista = strLista & _
            Me!Elenco5.Column(0, varItem) & ","
    Next varItem
    strLista = Left$(strLista, Len(strLista) - 1)
    CurrentDb.QueryDefs("Q_Tgruppo").SQL = "SELECT
Tproblema.IDproblema, Tproblema.problema, Tproblema.IDgruppo,
Tproblema.IDfamiglia, Tproblema.IDsottofamiglia  INTO filtro_gruppo
FROM Tproblema" _
        & "WHERE IDgruppo IN (" & strLista & ") " _
        & "ORDER BY Idgruppo, IDfamiglia;"
    Dim Cont As Integer
    For Cont = 0 To Me!Elenco5.ListCount - 1
        Me!Elenco5.Selected(Cont) = False
    Next Cont
End Sub
Mi si pianta sull'SQL
Qualcuno potrebbe aiutarmi?
Grazie mille a tutti

 ha scritto nel messaggio 
news:1b96b6d0-13cf-424d...@v4g2000hsf.googlegroups.com...
Ciao a tutti.
Vi chiedo un grosso favore perchč non riesco piů a venire fuori da
questo problema.
Ho bisogno di creare una tabella tramite una queri di creazione
tabella, nella quale ci devono essere dei criteri che variano di volta
in volta e devono essere presi da una casella di riepilogo.
La situazione č questa.
Ho una Tabella che si chiama "Tgruppo" che contiene un elenco di
gruppi, appunto, e una tabella che si chiama "Tproblema", che contiene
contiene l'elenco dei problemi di ogni gruppo e sottogruppo, ecc...
Io devo poter selezionare tramite una casella di riepilogo uno o piů
gruppi.
e fin qui ci siamo.
ciň che io seleziono deve servire come criterio per una query di
creazione tabella
Ciao Sergio,
Come sempre ci tengo a precisare che non sono un esperto, comunque io non 
starei a perdere la testa sul codice ma farei cosě:
penso che le due tabelle siano in qualche modo in relazione, se cosě č 
creerei la query usando le due tabelle  selezionado i campi di interesse con 
la procedure normale di access. Nei criteri dei campi che voi filtrare fai 
riferimento ai campi di una maschera appoggio dove inserirai appunto le 
caselle di riepilogo che contengono i valori da filtrare, aggiungi un 
pulsante che ha come evento su click una macro (o codice) "apri  query" ed 
il gioco č fatto.... credo.
Ciao e fammi sapere se funziona
GIS

 GIS
Grazie per la risposta, ma non funziona...
innanzitutto io preferirei poter selezionare anche più di un campo.
e poi la soluzione che mi suggerisci tu era la prima che avevo provato
ma non mi funzionava...non so bene perchè

 ha scritto nel messaggio 
news:d26df497-9759-4771...@e67g2000hsc.googlegroups.com...



Strano che non funzioni, io la uso spesso, in genere per query di 
aggiornamento o accodamento, ma il principio direi che lo stesso. Cmq mi 
spiace di non esserti stato di aiuto, sarà per la prossima volta
Ciao
GIS 

 ha scritto nel messaggionews:d26df497-9759-4771...@e67g2000hsc.googlegroups.com...

sicuramente non funziona perchè sono io che sbaglio qualcosa...visto
che anche io non sono un grande esperto
in pratica tu mi dici di creare la query, ma senza mettere i
criteri?...giusto?...
e poi come faccio a passare alla query i criteri presi da una casella
combinata o di riepilogo?

 ha scritto nel messaggio 
news:c23560e2-b283-4a70...@s36g2000prg.googlegroups.com...


Avanza per gradi.
Metti nella query dei criteri fissi, controlli che il risultato sia quello 
voluto per quell'esempio preciso.
Se la query funge, ti copi la specifica SQL della query e la incolli in VBA, 
identifichi i criteri fissi, li sostituisci con i valori prelevati dai 
controlli (in pratica stai usando criteri variabili).
Da come è strutturato il codice che hai postato io ho solo un piccolo 
suggerimento:
usa dei nomi comprensibili per i controlli per capire cosa contengono quando 
si legge il codice,
Nella costruzione dell'SQL mi pare che manchi uno spazio di separazione 
prima del WHERE, ma forse è colpa della mia vista.
Crea una variabile per contenere tutta la specifica sql.
Prova a controllare la stringa prima di passarla alla sql, con un punto di 
interruzione e leggi se ti sembra corretta sebbene sia un po' lunga per la 
finestra immediata.
IvanDaBologna 

 IvanDaBologna
Grazie mille...
La query funziona perchè come mi hai suggerito tu ho già provato con
dei criteri fissi e funge.
Il problema è quando copio l'SQL e metto i criteri variabili...
comunque oggi provo e poi ti faccio sapere