Newsgroup: it.comp.appl.access
Titolo: ricerca stringa ... avanzata

Salve
andiamo al dunque:
ho 2 tabelle NON in relazione tra loro
-la 1° tab ha un campo di tipo testo che contiene un codice alfanumerico
(campoA)
-la 2° tab ha un campo di tipo testo che contiene una combinazione di parole
tra cui potrebbe esserci anche il codice alfanumerico (campoB)
vorrei attivare una ricerca (avevo inizialmente pensato di sfruttare la
Funzione InStr)che per ogni record della tab1 confronta il campo campoA con
il CampoB di ogni record della tab2 fino a trovare quello che lo contiene,
sempre che ce ne sia uno (invece non dovrebbe mai succedere che per un
codice alfanumerico del campoA ci siano più campoB che lo contengano)
Come faccio ad effettuare questa sorta di ricorsione della ricerca???
HELP!!!!

 ha scritto nel messaggio
news:9kb8e3$i5b$1...@serv1.iunet.it...

Non basta una query dove metti sotto il campoB:
like ("*" & CampoA & "*")
?
Ciao da Arturo

 wrote in message
zR9a7.3790$te7.1...@news.infostrada.it...

No !
Ci ho provato ma non mi da nessun risultato
eppure io "a mano" (cioè scorrendo con gli occhi i due campi) qualche campoB
contenente il campoA l'ho trovato!

 wrote in message
9kba92$sbr$1...@serv1.iunet.it...

Mah ...
sembra funzionare se utilizzo
InStr([campoB];[campoA])<>"0"
che dite sarà giusto fare così?


Devi mettere le parentesi [
like ("*" & [CampoA] & "*")
Dovrebbe funzionare.
Ciao.
Carmel


Potrebbe adar bene (basta > 0), ma lo zero non va senza virgolette?
Ciao da Arturo

 ha scritto nel messaggio
news:5qfimtkosqg7ccion...@4ax.com...

E' giusto, di solito perň Access nelle query le mette da solo le parentesi
che mancano ai campi...

 ha scritto nel messaggio
news:9kb8e3$i5b$1...@serv1.iunet.it...

Se quello che ti serve è avere, in una maschera, come esito della ricerca il
contenuto del campoB che contiene il valore del campoA.
Se la maschera ha come origine record la 1° tab.
Se le due tabelle si chiamano Tabella1 e Tabella2.
Se il controllo della maschera associato al campo campoA si chiama anche lui
campoA.
Inserisci nella maschera una casella di testo non associata e nella sua
origine controllo scrivi:
=DLookUp("[campoB]";"Tabella2";"campoB Like '" & "*" & [campoA] & "*" & "'")
Se invece l'esito della ricerca lo vuoi in una query basata su Tabella1,
scrivi la Dlookup in un campo calcolato della query; il codice SQL della
query dovrebbe essere:
SELECT Tabella1.campoA, DLookUp("[campoB]","Tabella2","campoB Like '" & "*"
& [campoA] & "*" & "'") AS Pippo
FROM Tabella1;
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

 wrote in message
9kbi94$4ojm$1...@stargate1.inet.it...

Io sono interessata alla query.
Proverò anche questa soluzione, grazie Roberto
Silvia

 wrote in message
bLba7.4355$te7.1...@news.infostrada.it...

Quando l'ho inserita per la prima volta l'ho messa senza parentesi e la
query mi veniva vuota;
Access non me le ha aggiunte da solo, cosě ho pensato di inserirle a mano
e... tac si č visualizzato l'errore di non corrispondenza tra i tipi dei 2
campi (ma sono entrambi di tipo testo, cambia solo la loro dimensione!!???)

 Ciao da Arturo
Credevo anch'io ma Access le ha aggiunte automaticamente!
Grazie dell'aiuto
Ciao da Silvia


nada... ho provato a creare il campo calcolato
come mi hai suggerito ma
continua a darmi l'errore di
"Tipi di dati non corrispondenti nell'espressione criterio (3464)"
...ma sono entrambi di tipo testo

 ha scritto nel messaggio
news:9kdosu$grp$1...@serv1.iunet.it...

Non è per caso che hai omesso qualche apice?
Perché non provi a postare il codice SQL della tua query che usa il campo
calcolato?


O      O
     |
 _____
Mea Culpa...Avevo proprio sbagliato gli apici....Oppsss!
scusami Roberto