Post by ignazio.pilonePost by ignazio.pilonePost by BFSPost by ignazio.pilonePost by ignazio.pilonePost by BFSPost by ignazio.pilonePost by BFSPost by ignazio.pilonebuongiorno a tutti.
1° problema
Ho due tabelle di dati riferiti a circa 2500 [nome proprio di ufficio]
sulle quali devo analizzare moltitudini di dati.
Ho un altra tabella "Uffici" dove ciascun ufficio [con relativo nome
proprio] ha un proprio [codice immobile] univoco.
Ad esempio, nelle due tabelle di cui sopra potrò trovare un centinaio
di record riferiti a "Granozzo con monticello" [nome proprio
dell'ufficio] che tramite una query dovrei aggiornare in tabella con
il corrispettivo [codice immobile] proveniente dalla tabella "uffici"
che risulterà "CNL123456789"
update tabella1 set codiceimmobile=(select codiceimmobile from
tabellaUffici where tabella1.nomeproprio=tabellauffici.nomeproprio)
ovviamente adatta il nome della tabella e il nome dei cambi in base ai
tuoi dati
Post by ignazio.pilone2° problema
Non sempre troverò perfetta corrispondenza tra il [nome proprio
ufficio] e quello proveniente dalla tabella [uffici] quindi dovrei
pure capire come poter fare (presumo una query) per modificare a mano
i nomi in modo tale da poter ottenere per ciascun ufficio il proprio
codice immobile.
qui si complica la cosa....i nomi per cosa possono differire? punti?
virgole? spaziature?
Post by ignazio.pilonegrazi einfinite a tutti pe rl'attenzione e in modo particolare a chi
potràvorrà aiutarmi.
grazie
ciao
BFS
ciao BFS.
grazie davvero per l'aiuto.
Premetto che la mia intraprendenza è solo per capire e non insegnare
nulla, magari sbaglio e ti ringrazio anticipatamente per l'aiuto.
Ho realizzato una query "transcodifica" che prende dalla tabella
"uffici" [codice immobile],[ il nome proprio ufficio] e [nome del
corrispondente ufficio da andare a ricercare nelle tabelle dei dati].
In pratica se l'[ufficio] di "Granozzo con monticello" [codice
immobile] "CNL123456789" verrà indicato nelle due tabelle di dati con
il nome "Granozzo"
[codice immobile][nome proprio ufficio][nome del corrispondente
ufficio da andare a ricercare nelle tabelle dei dati].
A questo punto dalle due tabelle di dati avrei bisogno, (probabilmente
il tuo codice è proprio quello di cui ho bisogno ma non ho capito dove
metterlo o come lanciarlo) che nel campo [codicimmobile]
(originariamente vuoto) al nome "Granozzo" corrisponda il codice
"CNL123456789"...
grazie davvero per l'aiuto.
la query (che chiamo NomeTuaQuery) ha i campi: codiceImmobile,
nomeproprioufficio, nomecorrispondente
compilati con: "CNL123456789","Granozzo con monticello","Granozzo"
nomecorrispomdente, codice immobile
con nomecorrispomdente="granozzo" e codiceufficio=vuoto
se vuoi aggiornare la tabella con i codiceufficio presente nella query,
update NomeTuaTabella set codiceufficio=(select codiceufficio from
NomeTuaQuery where
nomeTuaTabella.nomecorrispondente=nometuaquery.nomecorrispondente)
la salvi e la apri
ciao
BFS- Nascondi testo citato
- Mostra testo citato -
davvero complimenti, hai capito perfettamente il mio problema.
Ora sono impegnato con la compilazione della tabella di trancodifica,
appena ultimato provo e ti faò sapere.
grazie davvero per la tempestività, competenza e cortesia.
ciao.- Nascondi testo citato
- Mostra testo citato -
ciao ancora,
ti chiamo da sotto un manto di neve...stasera non so se vado a casa...
purtroppo non funziona...e avrai capito che non sono un
programmatore...ma ci provo.
Allora cerco di spiegare.
Quando lancio la query mi chiede di inserire un valore parametro e
QRY_TRANSCODIFICA_TRIBUTI.UfficioSAP
che poi con un altro textbox mi dice : " per l'operazione è necessaria
una query aggiornabile."
UPDATE TRIBUTI SET Codiceimmobile = (SELECT Codiceimmobile from
QRY_TRANSCODIFICA_TRIBUTI WHERE TRIBUTI.UfficioSAP)=
(QRY_TRANSCODIFICA_TRIBUTI.UfficioSAP);
dove TRIBUTI è la tabella originaria che contiene i campi
"Codiceimmobile" (vuoto) e il campo UfficioSAP (Granozzo)
QRY_TRANSCODIFICA_TRIBUTI contiene Codiceimmobile (CN123456789) e
UfficioSAP (Granozzo)
La mia query riconoscendo granozzo dovrebbe riportare il relativo
codiceimmobile in tabella.
Sicuramente faccio casino ma non capisco l'istruzione...
Hai ancora un attimo di pazienza ?
grazie ciao
forse non ci capiamo con i dati....andiamo di codice allora.
Private Sub test()
Dim db As Database
Set db = CurrentDb()
Dim tuaquery As DAO.Recordset
Dim tributi As DAO.Recordset
Set tributi = db.OpenRecordset("tributi")
While Not tributi.EOF
Set tuaquery = db.OpenRecordset("select * from
QRY_transcodifica_tributi where ufficiosap='" &
tributi.Fields("ufficiosap") & "'")
tributi.Edit
tributi.Fields("codiceimmobile") = tuaquery.Fields("codiceimmobile")
tributi.Update
tributi.MoveNext
Set tuaquery = Nothing
Wend
Set tributi = Nothing
Set db = Nothing
End Sub
mandala in esecuzione e vedrai che funziona
prima:http://imageshack.us/photo/my-images/513/prima.png/
dopo:http://imageshack.us/photo/my-images/192/dopoh.png/
ciao
BFS- Nascondi testo citato
- Mostra testo citato -
Scusami ma ho davvero qualche problema...
Sono riuscito (spero perlomeno ...forse..) ad adattare il codice del
modulo senza che mi dichiari errori di compilazione.(avevo dei campi
che non combinavano)
Mi chiarisci solo, sempre se ne hai ancora voglia come posso lanciare
il modulo e farlo eseguire da una maschera ?
Ho provato a farlo da una macro ma non mi sembra la strada giusta...
grazie ancra e scusami per l'insistenza
ok grazie ancora- Nascondi testo citato
- Mostra testo citato -
proprio non ci riesco....
la tabella TRIBUTI, quella con tutti i dati da analizzare secondo il
Codice immobilare, contiene al campo Ufficio la voce "Granozzo".
La tabella UFFICI, utilizzata come interfaccia, contiene il campo
Ufficio (Granozzo) e il suo Codiceimmobile univoco.
La query QRY_TRANSCODIFICA_TRIBUTI associa al campo Ufficio (Granozzo)
il suo Codiceimmobile univoco (CNL12345678).
Purtroppo dopo mille prove, dovute alla mia inesperienza e ignoranza
in materia, in tabella TRIBUTI mi scrive solo tutti i codici immobile
relativi al primo Ufficio e poi probabilmente al passaggioa al secondo
Ufficio mi da' errore di sintassi, operatore mancante.
Private Sub test()
Dim db As Database
Set db = CurrentDb()
Dim QRY_TRANSCODIFICA_TRIBUTI As DAO.Recordset
Dim TRIBUTI As DAO.Recordset
Set TRIBUTI = db.OpenRecordset("TRIBUTI")
While Not TRIBUTI.EOF
Set QRY_TRANSCODIFICA_TRIBUTI = db.OpenRecordset("select * from
QRY_TRANSCODIFICA_TRIBUTI where Ufficio='" & TRIBUTI.Fields("Ufficio")
& "'")
TRIBUTI.Edit
TRIBUTI.Fields("Codiceimmobile") =
QRY_TRANSCODIFICA_TRIBUTI.Fields("Codiceimmobile")
TRIBUTI.Update
TRIBUTI.MoveNext
Set QRY_TRANSCODIFICA_TRIBUTI = Nothing
Wend
Set TRIBUTI = Nothing
Set db = Nothing
End Sub
grazie di cuore a chiunque vorrà e potrà aiutarmi...
un caro saluto.- Nascondi testo citato
- Mostra testo citato -
riesco più a venirne fuori.
aggiornabile...non ci capisco più nulla...
E' graditissimo ogni aiuto.....