Una famiglia di sistemi di gestione per database relazionali di Microsoft progettati per semplificare l'uso.
Lunedì provo. Grazie mille. comenque no i dati vanno su una tabella di word.
Grazie grazie grazie
Questo browser non è più supportato.
Esegui l'aggiornamento a Microsoft Edge per sfruttare i vantaggi di funzionalità più recenti, aggiornamenti della sicurezza e supporto tecnico.
Buongiorno.
La domada è banale ma ormai mi ci sono incasinato e non trovo la soluzione.
Ho un recordest proveniente da una query
i dati sono:
Data; OraInizio; OraFine.
Risultato
20/01/2022 10:20 11:20
20/01/2022 11:00 12:00
21/01/2022 10:20 11:20
Ho bisogno (tramite VBA) di avere i per ogni data i valori e poi passare alla data successiva.
In realtà i Valori sono 6 righe se ne ho solo 2 valide (prima data) allora il risultato delle altre sarebbe"NIL".
Alla fine dovre avere i valori:
20/01/2022 10:20 11:20
11:00 12:00
NIL
NIL
NIL
NIL
21/01/2022 10:20 11:20
NIL
NIL
NIL
NIL
NIL
Spero di essere stato abbastanza chiaro.
Grazie a chi mi può aiutare.
Una famiglia di sistemi di gestione per database relazionali di Microsoft progettati per semplificare l'uso.
Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.
Lunedì provo. Grazie mille. comenque no i dati vanno su una tabella di word.
Grazie grazie grazie
Ciao ho abbozzato il seguente codice,
prima di eseguirlo devi creare una tabella tbl_DataOut con la stessa struttura di quella in input (la tua query ) ma
i campi delle ore devi cambiarli in testo breve per poterci scrivere Nil.
Option Compare Database
Option Explicit
Function Genera()
Dim RstIn As Recordset
Dim RstOut As Recordset
Dim Ctr As Integer
Dim Data As Date
Set RstIn = CurrentDb.OpenRecordset("Select \* From tbl\_DateIn Order by Data, OraInizio, OraFine")
If RstIn.RecordCount = 0 Then GoTo Esci
DoCmd.SetWarnings False
DoCmd.RunSQL "Delete \* From tbl\_DateOut"
DoCmd.RunSQL "INSERT INTO tbl\_DateOut ( Data, OraInizio, OraFine ) " & \_
"SELECT tbl\_DateIn.Data, tbl\_DateIn.OraInizio, tbl\_DateIn.OraFine FROM tbl\_DateIn"
Set RstOut = CurrentDb.OpenRecordset("Select \* From tbl\_DateOut")
Data = RstIn("Data")
Ctr = 1
RstIn.MoveNext
Do While Not RstIn.EOF
If RstIn("Data") = Data Then
Ctr = Ctr + 1
RstIn.MoveNext
Else
GoSub Genera\_Nil
Data = RstIn("Data")
Ctr = 0
End If
Loop
GoSub Genera\_Nil
Esci:
Set RstIn = Nothing
Set RstOut = Nothing
Exit Function
Genera_Nil:
Do While Not 6 - Ctr = 0
RstOut.AddNew
RstOut("Data") = Data
RstOut("OraInizio") = "Nil"
RstOut.Update
Ctr = Ctr + 1
Loop
Return
End Function
Facci sapere
Mimmo
Ciao,
dove mettiamo il risultato? in una tabella?
Ciao Mimmo