Newsgroup: it.comp.appl.access
Titolo: Ricerca valore in campo associato

Stiamo compilando un'anagrafica.
In una combo, ho associato (al campo sottostante)  l'ID del record della
tabella "TblCitt`" per evitare
di scrivere ogni volta la citt`, ed evitare doppioni od errori.
Cioh:
TABELLA TblNominativo:
IDNominativo
Nome
Cognome
IdenCitt` (contiene l'ID di TblCitt`)  [nella maschera h un controllo combo]
TABELLA TblCitt`:
IDCitt`
Citt`
Cap
Provincia
Quando effettuo un ricerca nel combo, ovviamente Access non cerca la
stringa, ad esempio "Milano", che io digito nella maschera di ricerca
(quella con l'icona col binocolo, per capirci), ma avendo associato l'ID,
lui si aspetta di trovarci un numero (esattamente l'ID della citt` "Milano",
che perr io non posso vedere, ne tantomeno posso pensare di costringere
l'utente ad inserire il numero che corrisponde a "Milano").
Esiste un modo da utilizzare con questo scopo (trovare cioh "Milano",
digitando "Milano", e non un numero), avendo associato l'ID?
Per fare cir, l'unica soluzione h associare il campo "Citt`"? Oppure esiste
qualche altro modo, tenendovi associato l'ID?
(Ad esempio, passare alla maschera di ricerca il numero corrispondente
all'ID di "Milano", pescandolo magari tramite codice con un dlookup?
Grazie.
Omar
--
Posted from 
dns.spidernet.it
 [195.206.0.11] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG


wrote in message 005701bffc91$39074b20$1400cec3@Omar...

Se il tuo scopo è quello di inserire tramite una maschera nome, cognome e
città di appartenenza di un soggetto devi creare una maschera che ha come
origine dei dati la tabella TblNominativo con due caselle di testo con
origine dei dati rispettivamente Nome e Cognome.
La città viene inserita con una casella combinata che ha alcune proprietà
impostate come di seguito
Formato
Numero Colonne: 2
Larghezza colonne: 0;3cm  (3cm o inferiore dipende da quanto sono lunghi i
nomi delle città)
Dati
Origine controllo: Idencittà
Tipo origine riga: Tabella/Query
Origine riga: SELECT DISTINCTROW TblCittà.IDCittà, TblCittà.Città FROM
TblCittà ORDER BY TblCittà.Città;
Colonna associata: 1
Solo in elenco: Sì
Ciao,  Davide

Lascia cosi'.
Ci sono 2 modi
1) ID Citta,Citta
Colonna legata la 1
totale colonne 2
larghezza colonne 0;5 cm. E' QUESTO IL TRUCCO.SPEGNI ID Citta  E TI MOSTRA
SOLO LA CITTA.
2) Citta, ID Citta
Colonna legata la 2
totale colonne 1
larghezza colonne 5 cm.
Fattu Furbo.
Ciao


ha scritto nel messaggio news:005701bffc91$39074b20$1400cec3@Omar...

Prova a fare così.
1) Creati una maschera (MASCHERA2) che abbia come "Origine record"
TblNominativo e una visualizzazione a Maschere continue.
2) Creati una query (che chiameremo Query1) e che abbia il seguente codice
SQL:
SELECT TblNominativo.IdNominativo, TblCittà.Città
FROM TblCittà INNER JOIN TblNominativo ON TblCittà.IDCittà =
TblNominativo.IdenCittà;
3) Creati una seconda maschera (MASCHERA1) che contiene una casella di testo
non associata di nome Campo1, ed un pulsante di comando.
A fronte dell'evento "Su clic" del pulsante di comando genera il seguente
codice VBA:
Dim strFiltro As String
Dim strCerca As String
strCerca = "[Città]=" & Chr$(34) & Me!Campo1 & Chr$(34)
strFiltro = "[IdNominativo] IN (Select IdNominativo FROM Query1 WHERE" &
strCerca & ")"
DoCmd.OpenForm FormName:="Maschera2", WhereCondition:=strFiltro
4) Apri MASCHERA1, se nella casella testo digiti la parola Milano e premi il
pulsante di comando, ti compriranno tutti i nominativi delle persone che
abitano a Milano.
Spero che era questo che volevi.
Roberto

Roberto
Sl, all'incirca l'obiettivo era questo. E' stato un pochino macchinoso, ma
ce l'abbiamo fatta.
Grazie infinite.
Omar.



Prego.
Roberto