Newsgroup: it.comp.appl.access
Titolo: FindFirst secondo voi perchè non mi trova il record cercato?

RS4.FindFirst tipo = " & RS3!LatoBordareA1 & "
tipo è il nome del campo e  RS3!LatoBordareA1 è una stringa che vale A, B, C
ecc.......
grazie a tutti.

 ecc.......
Scrivi cosa invece fa o non fa, se da errore ecc.
Comunque, il valore del campo di RS3 deve essere circondato da apici
singoli, perchè è di testo. E' la solita sintassi dei criteri WHERE...
Ricordati anche che il recordset RS4 deve essere aperto con opzione
dbopendynaset
Antonio

 ha scritto nel messaggio
news:q7a19.13664$n04.4...@twister2.libero.it...

---------------------------------
questo è il codice
mi sapresti dire perchè prima di assegnare il valore
                RS4.FindFirst tipo = " & RS3!LatoBordareA1 & "
                RS4.Edit
                RS4!VALORE = RS4!VALORE + RS3!MetridiBordoA1
non mi trova il record corrispondente?
----------------------------------------------------
    Set RS4 = db.OpenRecordset("select * from cbqvalori", dbOpenDynaset)
    rs.MoveFirst
    Dim i, p
    p = [Forms]![distintabase]![Id]
    For i = 1 To DCount("[id]", "componentibordaturaq")
        Set RS3 = db.OpenRecordset("select * from contacomp
where([contacomp].id_dbase=" & p & ")")
        RS3.MoveFirst
        'NOTE non cerca il record e quindi assegna tutto ad A
        'ho postato newsgroup questio controllarlo
        For j = 1 To RS3.RecordCount
            RS4.Edit
            If RS3!LatoBordareA1 = rs!TipoBordo Then
                RS4.FindFirst tipo = " & RS3!LatoBordareA1 & "
                RS4.Edit
                RS4!VALORE = RS4!VALORE + RS3!MetridiBordoA1
                RS4.Update
            End If
            If RS3!LatoBordareA2 = rs!TipoBordo Then
                RS4.FindFirst tipo = " & RS3!LatoBordareA2 & "
                RS4.Edit
                RS4!VALORE = RS4!VALORE + RS3!MetridiBordoA2
                RS4.Update
            End If
            If RS3!LatoBordareB1 = rs!TipoBordo Then
                RS4.FindFirst tipo = " & RS3!LatoBordareB1 & "
                RS4.Edit
                RS4!VALORE = RS4!VALORE + RS3!MetridiBordoB1
                RS4.Update
            End If
            If RS3!LatoBordareB2 = rs!TipoBordo Then
                RS4.FindFirst tipo = " & RS3!LatoBordareB2 & "
                RS4.Edit
                RS4!VALORE = RS4!VALORE + RS3!MetridiBordoB2
                RS4.Update
            End If
            RS3.MoveNext
        Next j
        RS3.Close
        rs.MoveNext
    Next i
    rs.Close
    RS4.Close
    Set db = Nothing
    DoCmd.OpenForm "CBQvalori", acNormal, , , acFormEdit, acWindowNormal
    DoCmd.Maximize
GRAZIE:

                 RS4.FindFirst tipo = " & RS3!LatoBordareA1 & "
Aridaje!!!
Ci vogliono gli apici visto che il campo tipo non č numerico!!!!!

Fai il set = nothing di tutti i recordset coinvolti!!!
Antonio

 ha scritto nel messaggio
news:a2s19.17289$lu5.4...@twister1.libero.it...

Ti ringrazio dei tuoi chiarimenti, ma nonmi hai detto eprchč secondo te
prima di assegnare il valore non mi trova il record con findfirst?
mi potresti riscrivere al stringa di ricerca esatto con gli apici vist che
non ci vado molto d'accrodo con sti apici.
cosi č sbaglaita RS4.FindFirst tipo = " & RS3!LatoBordareB1 & "
giusta com'č?
grazie.

 giusta com'č?
RS4.FindFirst tipo = '" & RS3!LatoBordareB1 & "'"
Antonio