Newsgroup: it.comp.appl.access
Titolo: Questione di timing.........non ci levo le gambe, Help!

Ho gia postato il problema ma non riesco proprio a levarci le
gambe....aiuto!
situazione:
Db "attrezzi"
tabella "descrattr"
ho una form con un idattrezzo (cas testo )e la sua descrizione (casella
testo)
                                    1                        chiave inglese
                                    2                        cacciavite
etc...
ed una casella di riepilogo che pesca sulla tabella
e , se ci clicco sopra, mi visualizza i rispettivi vaolri nelle caselle di
testo.
Vorrei che , invece di cliccare sulla freccetta a piè di pagina (movenext)
selezionasse il record successivo automaticamente
dopo un certo periodo (es 5 secondi) e giunto alla fine tornasse al primo
valore (movefirst) e ripartisse exnovo;
ora, se concettualmente per me è tutto chiaro non riesco in pratica a capire
proprio come muovermi!
Chiedo gentilmente illuminazioni su questo problema perchè non ci levo le
gambe!!!!!!!
Grazie ancora
Paolo

 ha scritto nel messaggio
news:9O%y7.2504$QV6....@news2.tin.it...

Non so mai se ho capito la domanda, comunque se il problema è scrollare i
record imposti timer al valore che vuoi e poi nell'evento su timer
DoCmd.GoToRecord , , acNext
Ti rimane un problemino che non so risolvere... arrivato alla fine dei
record non so come farti ricominciare da capo (prova a guardare su help EOF)

 ha scritto nel messaggio
news:9O%y7.2504$QV6....@news2.tin.it...

Aggiungi una casella di testo sul Form che imposterai visibile No e che
chiamerai stato fatto questo modifica (Cambiando i nomi degli oggetti) e
inserisci il codice qui sotto nella routine Su timer imposta i secondi su
intervallo Timer e apri il form
ecco il codice:
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Dim lPos As Long
    Set db = CurrentDb
    Set rs = db.OpenRecordset("descrattr", dbOpenDynaset)
    lPos = CLng(Me.Stato)
    With rs
        If lPos = 0 Then
            .MoveFirst
            Me.Stato = 1
        Else
            .Move lPos
            Me.Stato = lPos + 1
        End If
        If .EOF Then
            Me.Stato = 0
        Else
            Me.NomeCaselladiTestoDoveVisualizzareLaDescrizioneDell'Attrezzo
= .Fields("NomeDelCampoCheContieneLaDescrizioneDell'Attrezzo")
        End If
    End With
Ciao Roberto - Syd


Ciao Roberto,
Grazie per la risposta, non riuscivo proprio a levarci le gambe ed anche ora
non riesco a capire molto bene
il codice che hai usato ma sto studiando....
L'unico problema è che arrivato alla riga
lPos = CLng(Me.Stato)
mi da errore per utilizzo non valido di null
salvo poi spostare la "freccetta" del debugger sulla riga successiva e veder
funzionare il
tutto... ma ti ripeto, sto studiando....
Immagino che teoricamente sia possibile applicare il codice che hai scritto
ad un numero
indefinito (o quasi) di tabelle , che ne pensi?
Grazie ancora,
Paolo

 >
Un ultima cosa:
quando mi visualizza i miei attrezzi mi salta una riga della tabella ossia
attrezzo 1 ---> attrezzo 3 attrezzo --> 5
Non credo sia normale, č dovuto ad alcune proprietą del codice che hai
usato?
Thks di nuovo
Paolo

 ha scritto nel messaggio
news:zqlz7.6985$V75.1...@news1.tin.it...

Me.Stato è la casella di testo che dovresti aver inserito e mi sono
dimenticato di dirti di impostare il valore predefinito a 0 (Zero).
Dopodiche non ti darà più errore.
Ciao Roberto - Syd


Ok mi piace il tutto, resta il problemino di cui ti ho accennato nella
replica al mio stesso
post, ossia che non mi fa vedere tutti icampi presenti in tabella ma che me
li salta ( in genere 1 sì ed uno no) ed alcuni valori della tabella non me
li visualizza mai.
Se ti viene in mente di cosa si può trattare fammi sapere (non penso che sia
sensibile ai dati e mi mostri quelli che gradisce di più! :-)
Buona notte,
Paolo