Newsgroup: it.comp.appl.access
Titolo: Problema con evento click di una casella di riepilogo

ElencoNominativi è una casella di riepilogo, voglio prendere i valori della 
riga selezionata nella casella di riepilogo e metterli dentro a delle 
caselle di testo. Prima seleziono la riga nella casella di riepilogo, clicco 
sul pulsante con la routine Comando8_Click e tutto funziona.
Invece di comandare il trasferimento dei dati con il pulsante vorrei fare 
tutto in automatico utilizzando l'evento Click della casella di riepilogo, 
Prima ho provato ad utilizzare l'evento Enter di ElencoNominativi e il 
comportamento è che al primo click nella casella di riepilogo non succede 
niente, con un secondo click su una riga diversa invece funziona. Ho fatto 
invece la routine ElencoNominativi_Click ma non ottengo nessun risultato. 
Penso che ci sia qualcosa che mi sfugge, come posso risolvere?
Grazie a tutti.
Private Sub Comando8_Click()
    Dim varItem As Variant
    For Each varItem In Me!ElencoNominativi.ItemsSelected
        txtSel.Value = Me!ElencoNominativi.Column(0, varItem)
        txtSel2.Value = Me!ElencoNominativi.Column(1, varItem)
    Next varItem
 End Sub
Private Sub ElencoNominativi_Click()
    Dim varItem As Variant
    For Each varItem In Me!ElencoNominativi.ItemsSelected
        txtSel.Value = Me!ElencoNominativi.Column(0, varItem)
        txtSel2.Value = Me!ElencoNominativi.Column(1, varItem)
    Next varItem
End Sub 

 Penso che ci sia qualcosa che mi sfugge, come posso risolvere?
Devi utilizzare l'evento AfterUpdate della combo.
-------------------------------------------------------------
Private Sub ElencoNominativi_AfterUpdate()
   Dim varItem As Variant
   If IsNull(Me!ElencoNominativi) Then Exit Sub
   For Each varItem In Me!ElencoNominativi.ItemsSelected
       txtSel.Value = Me!ElencoNominativi.Column(0, varItem)
       txtSel2.Value = Me!ElencoNominativi.Column(1, varItem)
   Next
End Sub
-------------------------------------------------------------
-- 
PBsoft di Gabriele Bertolucci
www.pbsoft.it


 End Sub
Nell'ultimo next mancava un varItem ma non funziona lo stesso.
Avete qualche idea su come intercettare correttamente l'evento?
Grazie 

 credo sia inutile ciclare... con la combo selezioni solo un elemento.
Giusto?
fammi sapere
nik


Non mancava, l'ho tolto appositamente.
Il nome della variabile su cui si cicla posto dopo il Next č opzionale, come 
da guida di Access.
Aggiungo che conviene non inserirlo dopo il Next per evitare un inutile 
rallentamento dovuto al test che Access farebbe nuovamente sulla variabile.
Inoltre, come ha fatto giustamente osservare nick_dent il ciclo č inutile, 
visto che si tratta di una combo.


 Giusto?
Hai perfettamente ragione, funziona!! Era cosě semplice, pensavo che 
bisognasse usare ugualmente itemSelected come da Help di Access e ciclare di 
conseguenza invece non era la soluzione adatta, ora č tutto ok!!
Grazie mille!
Volevo sottoporre questo ultimo problema, scrivendo queste due routine, a 
seconda della riga selezionata della casella di riepilogo, nella 
sottomaschera compare la riga della tabella corrispondente. Tutto funziona, 
l'unico bug che ho trovato si verifica quando posiziono il cursore in una 
casella di testo della sottomaschera sul campo che voglio modificare, poi 
clicco su un'altra riga della casella di riepilogo e i dati nelle caselle di 
testo della sottomaschera non cambiano, tutto funziona se riposiziono il 
cursore nella casella ID della sottomaschera. Come posso risolvere questo 
piccolo inconveniente? E' possibile riposizionare in automatico il cursore 
su ID oppure č meglio agire in altro modo?
Grazie!
Private Sub Form_Open(Cancel As Integer)
Filter = "ID is null"
FilterOn = True
Me!ElencoNominativi.RowSource = ""
End Sub
Private Sub ElencoNominativi_Click()
txtSel.Value = Me!ElencoNominativi.Column(0)
txtSel2.Value = Me!ElencoNominativi.Column(1)
Me!SMProva.SetFocus
Dim Pluto As Integer
Pluto = Me!ElencoNominativi.Column(0)
DoCmd.FindRecord Pluto
End Sub 

 ha scritto nel messaggio
news:n8_Mf.9069$ou2....@tornado.fastwebnet.it...

Scusa ma non ho ben compreso cosa desideri...
ma tu vuoi che la maschera punti al record che selezioni cliccando sulla
combo??????
nik

 nik
Esatto, e ci riesco!
Se seleziono il nominativo giusto e vado a modificarlo tutto funziona a 
dovere.
Quando vado in un campo della sottomaschera per modificarlo e poi clicco su 
un altro nominativo nella casella di riepilogo non cambia record.
Riposizionando il cursore sul campo ID della sottomaschera, clicco su un 
altro nominativo nella casella di riepilogo e tutto funziona.
Qualche idea?
Ciao! 

cut...
in aggiunta alla routine del combobox aggiungi questa riga:
nomesottomaschera.form.requery
in modo da riaggiornare il suo recordser al cambiamento della selezione nel
combo di cui sopra...
...
vado a casa...
a domani
nik

 combo di cui sopra...
Ho provato ma non funziona, anzi, aggiungendo questa riga la ricerca è 
sempre fissa sul primo record della tabella. 

 ha scritto nel messaggio
news:kv3Nf.9676$ou2...@tornado.fastwebnet.it...

se ti va spediscimi il database con la spiegazione di quello che vuoi fare!!
se posso ti risolvo il problema
ciao
nik

 ciao
Ti ho inviato il database nella casella di tiscali.
Ciao! 

 ha scritto nel messaggio 
news:4404d659$0$29109$5fc...@news.tiscali.it...
