Newsgroup: it.comp.appl.access
Titolo: Per Sergio MAZZA......

Scusate a tutti ma, visto che ho attirato l'attenzione di Sergio MAZZA, e
forse alla maggior parte dell'utenza, per una eventuale soluzione da
inserire nel sitocomune, voglio segnalargli che nel mio (errato) post
"Fusione record.........", c'è la routine che mi ha chiesto, vecchia
"concessione" di Salvatore.
Ti chiedo di provarla in quanto, a me, da un errore della funzione Right.
Grazie dell'attenzione.
Marco.


Per quanto mi riguarda non ho utilizzato il codice che indichi, in piů non
dici che tipo di errore ti presenta e quindi vado a naso; se ti si ferma
sulla riga con il Right č probabile che una delle variabili sia Null o Ti
mancano dei riferimenti nelle librerie. Verifica...
Un'altra regola (in aggiunta alle altre) di questo NG č quella di non
rivolgersi direttamente ad una persona (come in questo caso) perché, oltre
all'oggetto generico, non sortisci nessun effetto per gli altri che non si
chiamano Sergio MAZZA. Quindi non avrai l'attenzione di nessun'altro e
nessun'altra possibile soluzione al tuo problema se la persona da te
interpellata non ha le conoscenze per aiutarti.
Poi visto che hai aperto un'altra discussione sarebbe carino che
riproponessi il codice e non che me lo devo andare a cercare; questo vale
anche per i malcapitati curiosi.
Ciao.
--
Sergio MAZZA


Giusto! So benissimo che non è corretto rivolgersi direttamente ad un
utente.
Mi sto chiedendo se è il caso di aprire un nuovo 3d, chiaramene con un
appropriato "titolo".
Comunque ti replico il codice e vedo che hai già intuito il problema
dell'errore: in effetti mi sembra che manchi qualche libreria ma non so
quale.
-------- qui il codice:
Dim rst1 As Recordset, rst2 As Recordset, rst3 As Recordset
Dim t As Integer, padre1 As Long, padre2 As Long, step1 As Long, step2 As
Long
Dim figlio As String, figli As String, num As Long
Set rst1 = CurrentDb.OpenRecordset("sopralluoghi")
Set rst2 = CurrentDb.OpenRecordset("tecnici")
Set rst3 = CurrentDb.OpenRecordset("SopralluoghiETecnici")
DoCmd.SetWarnings False
DoCmd.RunSQL "Delete * FROM sopralluogiETecnici"
DoCmd.SetWarnings True
rst2.MoveFirst
rst2.MoveLast
num = rst2.RecordCount
rst1.MoveFirst
rst2.MoveFirst
Do Until rst1.EOF
padre1 = rst1!sopralluogo
 For t = 1 To num
    padre2 = rst2!IDsopralluogo
    figlio = rst2!IDtecnico
    If padre1 = padre2 Then
    figli = figli & ", " & figlio
    End If
    rst2.MoveNext
 Next
If figli <> "" Then
rst3.AddNew
rst3!IDsopralluogo = padre1
rst3!sopralluogoETecnico= Right(figli, Len(figli) - 1)
rst3.Update
figli = ""
End If
rst1.MoveNext
rst2.MoveFirst
Loop
-------------------------------------------------------------
Confidando nella tua pazienza e quella di tutti, comprese le dovute scuse,
anticipatamente ringrazio.
Marco.

 ha scritto nel messaggio
news:wB%1c.1941$O31....@news4.tin.it...

Il riferimento mancante lo vedi aprendo la finestra (da modulo aperto)
Strumenti - Riferimenti; se trovi la parola MANCA accanto ad una voce devi
registrare nuovamente quella libreria...
Ciao.
--
Sergio MAZZA

 ha scritto nel messaggio
news:c2a296$kdp$1...@canarie.caspur.it...

A parte qualche errore (originale) di battitura di Salvatore (corretto), ho
reinstallato le librerie e ho compilato tutti i moduli ma, NON SUCCEDE
NULLA! - ho creato la tabella "sopralluoghiETecnici" - credo che debba
essere composta da due campi "idsopralluogo" e "idtecnico".
Dopo aver "premuto" il pulsante, ove mi esegue la routine, praticamente vado
a "leggere" la tabella "SopralluoghiETecnici" e risulta vuota.
Boh? manca qualcosa?
Grazie anticipatamente.
Marco.