Newsgroup: it.comp.appl.access
Titolo: Calcolo date tra record

Non ho ancora risolto il mio problema!
Devo calcolare la differenza di data nella casella "INTERVALLO" tra il campo 
"DATA" del record 2 e lo stesso campo "DATA" del precedente record 1.
Ringrazio chi ha già risposto al precedente messaggio (che non ho salvato) e 
chiunque altro abbia suggerimenti, consigli, siti da consultare o 
quant'altro, purchè ESTREMAMENTE dettagliato.
Anticipatamente ringrazio e saluto
Bye bye 

 ha scritto nel messaggio 
news:46268aae$0$37201$4faf...@reader3.news.tin.it...

Private sub NomeCasellaIntervallo_gotfocus()
Dim TheDate As Date    ' Dichiara le variabili.
Dim Msg
TheDate = NomePrimoControllo
NomeCasellaIntervallo = "" & DateDiff("d", NomeSecondoControllo, TheDate) ' 
nel controllo "NomeCasellaIntervallo" vengono indicati i giorni
End Sub
Ciao 

 ha scritto nel messaggio
news:46268aae$0$37201$4faf...@reader3.news.tin.it...

o ti riferisci alla chiave primaria del record precedente se è in ordine di
chiave, oppure devi agigungere un campo (intervallo) che valorizzi dopo aver
ciclato attraverso un recordset ordinato secondo le tue esigenze che si
sposta
al record precedente poi al corrente lo valorizza e si sposta avanti di due
per poi ricominciare.
la faccio breve e un po' confusa perchè è un tantino complessa.
devi stabilire il flusso del recordset.
se non hai capito (cosa assolutamente plausibile) forse ho in giro un
vecchio codice che fa questo...
intanto che lo cerco prova a rifletter su quanto ti ho accennato.
M

 ha scritto nel messaggio
news:46272c56$0$36444$4faf...@reader5.news.tin.it...

da adattare:
Dim rst As DAO.Recordset
Me!posizione = ""
Set rst = Me.RecordsetClone
DoCmd.GoToRecord , , acFirst
DoCmd.GoToRecord , , acNext
rst.MoveFirst
rst.MoveNext
Do Until rst.EOF
    rst.MovePrevious ' controlla sintassi
    Me!posizione = rst!ora_fine
    DoCmd.GoToRecord , , acNext
    rst.MoveNext
    rst.MoveNext 'così va avanti di 2 altrimenti resta sempre li
    If IsNull(Me.data_prestazione) Then Exit Do
    Loop
Set rst = Nothing

 Bye bye
-- 
Roberto
-----------------------------------------------
il Sito Comune di it.comp.appl.access
http://www.sitocomune.com
-----------------------------------------------

 ha scritto nel messaggio 
news:DHwVh.10798$R_5.3...@twister1.libero.it...

================================
Ciao, vorrei sapere se con un'altra funzione, in una maschera tabellare, 
posso effettuare calcoli matematici o trigonometrici fra un record x e 
quello precedente o successivo.
Eventualmente fosse si, puoi aiutarmi con l'espressione da scrivere ? Non ho 
grande dimestichezza con Access, perlomenno a certi livelli.
Mille grazie... Bruno 

 Bruno


 ha scritto nel messaggio 
news:46268aae$0$37201$4faf...@reader3.news.tin.it...

____________________
Ciao, io ho usato la seguente formula che ho inserito in una casella 
nascosta nella maschera; mi legge il valore del record precedente e mi 
permette così di effettuare il calcolo in un'altro controllo utilizzando 
DateDiff() '.
.
=IIf(DLookUp("[LatGG]";"[T:planing]";"[WPT]=Forms![MascheraDlookUP]![WPT]+1") 
Is 
Null;0;DLookUp("[LatGG]";"[T:planing]";"[WPT]=Forms![MascheraDlookUP]![WPT]+1")
Spero possa aiutarti
Bruno
Vedi anche...
Using DLookup()
NOTE: This technique assumes you have a table with an ID field of a Number 
data type, and the ID values are not missing any number in sequential order. 
If your table does not meet these criteria, then you should use the "Using 
Code" method described later in this article.
You can use the following sample DLookup() expressions to obtain values from 
a field in the previous or next record of a form, a report, or a query.
Back to the top
In a Form:
To obtain a value from a field in the previous record, type the following 
line for the text box's ControlSource property:
=DLookUp("[Field]","Table","[ID]=Forms![Form1]![ID]-1")
To obtain a value from a field in the next record, type the following line 
for the text box's ControlSource property:
=DLookUp("[Field]","Table","[ID]=Forms![Form1]![ID]+1")
Back to the top
In a Report:
To obtain a value from a field in the previous record, type the following 
line for the text box's ControlSource property:
=DLookUp("[Field]","Table","[ID]=Reports![Report1]![ID]-1")
To obtain a value from a field in the next record, type the following line 
for the text box's ControlSource property:
=DLookUp("[Field]","Table","[ID]=Reports![Report1]![ID]+1")
Back to the top
In a Query:
To obtain a value from a field in the previous record, type the following 
line in the Field row of the query grid:
Expr1: DLookUp("[Field1]","Table1","[ID]=" & [ID]-1)
To obtain a value from a field in the next record, type the following line 
in the Field row of the query grid:
Expr1: DLookUp("[Field1]","Table1","[ID]=" & [ID]+1)
NOTE: In these sample expressions, the "-1" and "+1" indicate the previous 
and next records. When the current record is the first record in the 
recordset, the "-1" returns a Null value because there is no previous 
record. Likewise, when the current record is the last record in the 
recordset, the "+1" returns a Null. If you want to return a value from a 
record other than the next or previous one, you can specify a different 
number, for example, "-3" for the third previous record.