Newsgroup: it.comp.appl.access
Titolo: Filtrare una listbox

Ciao a tutti,
espongo brevemente il mio quesito:
ho creato 2 tabelle:
1)tb_fornitori     
               Codice (Numerico)  --> Chiave primaria
               RagioneSociale (Testo)
               Indirizzo (Testo)
               Citta (Testo)
2)tb_registrazioni 
                   IdCodice (Numerico)
                   Commessa (Testo)
                   Ordine   (Testo)
                   DataOrd  (Data)
                   Q.ta     (Numerico)
                   CodArt   (Testo)
                   Descrizione (Testo)
La relazione fra le tabelle è :  Codice (1) -------> (oO) IdCodice 
Poi ho creato 2 maschere rispettivamente alle tabelle di cui sopra:
1)fr_fornitori
2)fr_registrazioni
Nella maschera fr_fornitori ho posto una LISTBOX di nome "Elenco" che
contiene l'anagrafica fornitori ovvero la tabella tb_fornitori.
Quello che vorrei fare è che cliccando 2 volte su una riga qualasiasi
della LISTBOX "Elenco" (che poi rappresentano i dati anagrafici del
fornitore scelto),mi si deve aprire la maschera fr_registrazioni il cui
record corrente appartiene alla riga della listbox cliccata (cioè del
fornitore scelto).
cioè detto semplicemente se dovessi fare doppio clic su una stessa riga
della listbox,la maschera su detta che si apre si deve porre su un nuovo
record che mi permettera di scrivere altri dati
Io nell'Evento doppio clic della LISTBOX ho iniziato con l'apertura della
maschera fr_registrazioni che si posiziona sul nuovo record; cioè:
-----------------------------------------------
Private Sub Elenco_DblClick(Cancel As Integer)
DoCmd.OpenForm "fr_registrazioni"
DoCmd.GoToRecord , , acNewRec
End Sub
-----------------------------------------------
ma non riesco a filtrare la maschera per la riga della listbox
doppiocliccata (cioè non riesco ad assegnare alla riga doppiocliccata i
dati che voglio inserire per quel fornitore).
Spero di essere stato chiaro, datemi un cenno
Grazie
Domy
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it


sinceramente non ho capito molto..
cmq se vuoi aprire una maschera visualizzando solo alcuni record (in
questo caso quelli in cui il campo idcodice  è uguale al codice
presente nella listbox) devi inserire nell'evento "doppio click"
questo codice
    Dim Criteri As String
    stLinkCriteria = "[idcodice]=" & Me.casellariepilogo
    DoCmd.OpenForm "fr_registrazioni", , , criteri
ciao

 ciao
Ciao prima di tutto grazie per la risposta, 
tuttavia non funziona come vorrei nel senso che quando per esempio:
faccio doppioclick sul fornitore PIPPO, inserisco i dati e poi chiudo;
se faccio doppioclic su un'altro fornitore per esempio TOPOLINO mi fa
vedere gli stessi dati che ho inserito per PIPPO, e non deve essere cosi.
non capisco l'errore dove possa essere.
Tu che ne pensi? come si potrebbe risolvere?
-- 
questo articolo e` stato inviato via web dal servizio gratuito 


 
metti un punto di interruzione sulla riga
DoCmd.OpenForm "fr_registrazioni", , , criteri
e controlla in
stLinkCriteria = "[idcodice]=" & Me.casellariepilogo
se stLinkCriteria contiene un valore diverso ogni volta, altrimenti 
potrebbe essere questione di indicargli il .column(x) che contiene il 
giusti idcodice di quella riga (item).
IvanDaBologna

 IvanDaBologna
-----------------------------------
Cioč dove dovrei inserire Column(0)?


 Cioè dove dovrei inserire Column(0)?
In quale colonna della casella riepilogo si trova il campo "idcodice"?
È la colonna che si trova nella proprietà "Colonna associata"?
Ma forse si tratta di un problema diverso:
Tu parli sempre di record nuovi nella maschera fr_registrazioni
o ci sono già dati vecchi per un fornitore?
Se ci sono vecchi record, funziona per questi?
Se parli di problemi con record nuovi, cioè tutti inseriti nella
fr_registrazioni prova così:
DoCmd.OpenForm "fr_registrazioni", , , criteri
If Forms!fr_registrazioni.NewRecord Then
   Forms!fr_registrazioni!idcodice = Me!CasellaRiepilogo
Else
   Forms!fr_registrazioni!idcodice.DefaultValue = Me!CasellaRiepilogo
End If
-- 
HTH
Karl
*********
Access FAQ: 
www.donkarl.com/it