Newsgroup: it.comp.appl.access
Titolo: Cercare record...

Salve,
una maschera frmClienti con sottomaschera Sottomaschera_clienti in
visualizzazione foglio dati.
Nella maschera frmClienti ho inserito una casella di testo non associata,
che chiamo "campo_ricerca" e un pulsante di controllo che chiamo
"pulsante_ricerca".
Inserendo un cognome in "campo_ricerca" e cliccando sul "pulsante_ricerca"
vorrei che il puntatore al record della sottomaschera_clienti si
posizionasse al record trovato (se lo trova, altrimenti mi dice che non
esiste...).
Ma qualsiasi altra soluzione andrebbe bene, l'importante che mi permetta la
ricerca di un campo nella tabella della sottomaschera e il posizionamento
del puntatore al record trovato.
Credo sia possibile, ma non per me (almeno per adesso...)
(si potrebbe anche provare qualcosa del genere...cioč, appena digitato un
carattere nel campo_ricerca, automaticamente la tabella si aggiorna
visualizzando le righe che iniziano con quel carattere...bohhh.. fate voi
! )
Ciao e grazie a tutti.

 ha scritto nel messaggio
news:3cCja.9317$DT4.2...@twister1.libero.it...

per sedare dubbi cerca su 
www.sitocomune.com
c'č anche un'esempio interessante nella sezione forms
"maschera di ricerca record"

1. crea una maschera nuova in visualizzazione struttura
2. crea una casella di testo e chiamala Pippo
3. nelle proprietà della maschera su origine record metti il nome della
tabella che contiene i dati ma non associare la casella a nessun campo
4. crea una sottomaschera che contenga il campo Pippo da "posizionare" e gli
altri dati che ti interessano (puo' anche essere una maschera già creata in
precedenza)
5. Scegli Pippo come campo da collegare (Mostra NomeTab per ogni record in
NomeTab che usa Pippo)
6. Fine


SI, OK, Funziona ! questo avrei potuto farlo anche con una query
parametrizzata.. almeno credo...ma io ho bisogno di usare la tebella perchč
(credo) che eseguire una query o requery su 15.000 clienti richieda del
tempo...
Con il tuo procedimento sorge un altro problema: la tabella mi visualizza i
clienti solo se ci sono record correlati, altrimenti mi rimane vuota; io
vorrei che mi visualizzasse tutti i record sempre e cmq!
solo che dovrebbe visualizzarmi quella parte della tabella che contiene il
record cercato...
Grazie cmq, se stato gentile!
Ciao

record cercato...
allora: fai na maschera Maschera1, con una sottomaschera basata sula
tabella dei clienti in schede continue
su maschera1 ci metti sta casetta di testo txt_Ricerca e un
bottoncino...evento su click di quel bottoncino mettici sto codice:
(di esempio ovviamente)
--------------------------------------------
Private Sub Bottoncino_Click()
Dim Stringa as string
Stringa = "SELECT * from nometabellaclienti where nomecampochiave='" &
Me!txt_Ricerca & "'"
Me.Nomesottomaschera.recordsource=stringa
Me.nomesottomaschera.requery
End sub
------------------------------------------------
gli apici messi cosi sono da utilizzare nel caso in cui il
campochiave, esempio codicecliente, sia un campo di tipo testo,
altrimenti userai:
Stringa = "SELECT * from nometabellaclienti where nomecampochiave='" &
Me!txt_Ricerca (senza gli apici)
Spero ti funzioni, ciao! :)
Cmq..ho un esempio da inviarti se hai bisogno, dammi l'email.
Ciao


 Ciao e grazie a tutti.
Vai sul Sito Comune (link qui sotto) e nella Sezione Forms Leggi la FAQ di
Davide La Mantia (Sib) intitolata "Come creare un controllo di ricerca"
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

Prova ad usare questo codice
Crea una maschera tabulare
in Intestazione maschera crea una casella di testo e chiamala Ricerca
nell'evento change crei una routine e ci scrivi
   Dim rst
   Dim strRicerca As String
   strRicerca = Me.Ricerca.Text
   If Not IsNull(Me!Ricerca.Text) Then
      Set rst = Me.RecordsetClone
      rst.Findfirst "[TUOCAMPO] like '" & Me!Ricerca.Text & "*'"
      Me.Bookmark = rst.Bookmark
      rst.Close
      Set rst = Nothing
   End If
   Me!Ricerca = strRicerca
   Me!Ricerca.SelStart = 255
in TUOCAMPO metti il nome del campo in cui vuoi ricercare
se hai fatto le cose bene quando scrivi qualcosa nella casella ricerca il
selector record dovrebbe posizionarsi sul primo record che corrisponde a
quel criterio e cosi via se continui a premere [invio]