IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Bouton Précédent/suivant avec un recordset


Sujet :

Access

  1. #1
    Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2013
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2013
    Messages : 46
    Points : 40
    Points
    40
    Par défaut Bouton Précédent/suivant avec un recordset
    Bonjour,
    J'essai de faire quelque chose d'assez simple en principe qui je croyais allait me prendre 30 secondes mais finalement, je cherche, je cherche et je ne trouve pas.

    Je veux faire des boutons de navigation dans formulaire indépendant.
    J'ai 4 boutons:
    - Suivant
    - Précédent
    - Dernier
    - Premier

    Mon bouton Premier et dernier fonctionne très bien. Sur le load de ma page, je me positionne par défaut sur le dernier enregistrement. Si je fait suivant, je comprend qu'il y ait un erreur car il atteint la fin mais quand je clic sur le bouton Précédent, j'obtient cet erreur.

    Erreur d'exécution '-2147352567(80020009): Valeur non valide pour ce champ.

    Merci de m'aider svp.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    Sub Form_Load()
     
    Dim FTemps As dao.Recordset
    Dim oDb As dao.Database
    Set oDb = CurrentDb
    Set FTemps = oDb.OpenRecordset("Feuille Temps", dbOpenTable)
     
    FTemps.MoveLast
     
    Me.TxtNoFeuilleTemps = FTemps("N° Feuille temps")
    Me.TxtNomProjet = FTemps("ID Projet")
    Me.TxtEmploye = FTemps("N° Employé")
    Me.TxtDate = FTemps("DDate")
    Me.TxtHDebut = FTemps("Heure début")
    Me.TxtHFin = FTemps("Heure fin")
    Me.TxtHDiner = FTemps("Heure dîner")
    Me.TxtExtra = FTemps("Extra")
    Me.TxtHExtra = FTemps("Nb Heures Extra")
    Me.TxtNoteExtra = FTemps("Notes Extra")
    Me.TxtAutreNote = FTemps("Autres Notes")
     
    Me.LstCatégorie.Requery
    LstTâcheDispo.RowSource = "Select [Description],[ID_Tâche],[ID_Catégorie] From Tâche " & _
                              "where ID_Catégorie= LstCatégorie;"
     
    Me.LstTâcheDispo.Requery
    Me.LstTâches.Requery
     
    FTemps.Close
    Set FTemps = Nothing
     
    End Sub
     
    Sub BtnPrécédent_Click()
     
    Dim FTemps As dao.Recordset
    Set FTemps = CurrentDb.OpenRecordset("Feuille Temps", dbOpenTable)
     
    FTemps.Move -1
    Me.TxtNoFeuilleTemps = FTemps("N° Feuille temps")
    Me.TxtNomProjet = FTemps("ID Projet")
    Me.TxtEmploye = FTemps("N° Employé")
    Me.TxtDate = FTemps("DDate")
    Me.TxtHDebut = FTemps("Heure début")
    Me.TxtHFin = FTemps("Heure fin")
    Me.TxtHDiner = FTemps("Heure dîner")
    Me.TxtExtra = FTemps("Extra")
    Me.TxtHExtra = FTemps("Nb Heures Extra")
    Me.TxtNoteExtra = FTemps("Notes Extra")
    Me.TxtAutreNote = FTemps("Autres Notes")
     
    Me.LstCatégorie.Requery
    LstTâcheDispo.RowSource = "Select [Description],[ID_Tâche],[ID_Catégorie] From Tâche " & _
                              "where ID_Catégorie= LstCatégorie;"
     
    Me.LstTâcheDispo.Requery
    Me.LstTâches.Requery
     
    FTemps.Close: Set FTemps = Nothing
     
    End Sub
     
    Private Sub BtnSuivant_Click()
     
    Dim FTemps As dao.Recordset
    Set FTemps = CurrentDb.OpenRecordset("Feuille Temps", dbOpenTable)
     
    FTemps.Move 1
    Me.TxtNoFeuilleTemps = FTemps("N° Feuille temps")
    Me.TxtNomProjet = FTemps("ID Projet")
    Me.TxtEmploye = FTemps("N° Employé")
    Me.TxtDate = FTemps("DDate")
    Me.TxtHDebut = FTemps("Heure début")
    Me.TxtHFin = FTemps("Heure fin")
    Me.TxtHDiner = FTemps("Heure dîner")
    Me.TxtExtra = FTemps("Extra")
    Me.TxtHExtra = FTemps("Nb Heures Extra")
    Me.TxtNoteExtra = FTemps("Notes Extra")
    Me.TxtAutreNote = FTemps("Autres Notes")
     
    Me.LstCatégorie.Requery
    LstTâcheDispo.RowSource = "Select [Description],[ID_Tâche],[ID_Catégorie] From Tâche " & _
                              "where ID_Catégorie= LstCatégorie;"
     
    Me.LstTâcheDispo.Requery
    Me.LstTâches.Requery
     
    FTemps.Close: Set FTemps = Nothing
     
    End Sub
     
    Private Sub BtnDernier_Click()
     
    Dim FTemps As dao.Recordset
    Set FTemps = CurrentDb.OpenRecordset("Feuille Temps", dbOpenTable)
     
    FTemps.MoveLast
    Me.TxtNoFeuilleTemps = FTemps("N° Feuille temps")
    Me.TxtNomProjet = FTemps("ID Projet")
    Me.TxtEmploye = FTemps("N° Employé")
    Me.TxtDate = FTemps("DDate")
    Me.TxtHDebut = FTemps("Heure début")
    Me.TxtHFin = FTemps("Heure fin")
    Me.TxtHDiner = FTemps("Heure dîner")
    Me.TxtExtra = FTemps("Extra")
    Me.TxtHExtra = FTemps("Nb Heures Extra")
    Me.TxtNoteExtra = FTemps("Notes Extra")
    Me.TxtAutreNote = FTemps("Autres Notes")
     
    Me.LstCatégorie.Requery
    LstTâcheDispo.RowSource = "Select [Description],[ID_Tâche],[ID_Catégorie] From Tâche " & _
                              "where ID_Catégorie= LstCatégorie;"
     
    Me.LstTâcheDispo.Requery
    Me.LstTâches.Requery
     
    FTemps.Close: Set FTemps = Nothing
     
    End Sub
    Private Sub BtnPremier_Click()
     
    Dim FTemps As dao.Recordset
    Set FTemps = CurrentDb.OpenRecordset("Feuille Temps", dbOpenTable)
     
    FTemps.MoveFirst
    Me.TxtNoFeuilleTemps = FTemps("N° Feuille temps")
    Me.TxtNomProjet = FTemps("ID Projet")
    Me.TxtEmploye = FTemps("N° Employé")
    Me.TxtDate = FTemps("DDate")
    Me.TxtHDebut = FTemps("Heure début")
    Me.TxtHFin = FTemps("Heure fin")
    Me.TxtHDiner = FTemps("Heure dîner")
    Me.TxtExtra = FTemps("Extra")
    Me.TxtHExtra = FTemps("Nb Heures Extra")
    Me.TxtNoteExtra = FTemps("Notes Extra")
    Me.TxtAutreNote = FTemps("Autres Notes")
     
    Me.LstCatégorie.Requery
    LstTâcheDispo.RowSource = "Select [Description],[ID_Tâche],[ID_Catégorie] From Tâche " & _
                              "where ID_Catégorie= LstCatégorie;"
     
    Me.LstTâcheDispo.Requery
    Me.LstTâches.Requery
     
    FTemps.Close: Set FTemps = Nothing
     
    End Sub

    Dans le PDF DAO, il est indiqué à un moment donnée ce ceci: *`"Elles sont disponibles pour tout type de Recordset hormis les méthodes MoveFirst et MovePrevious qui opèrent des déplacements vers l'arrière et qui sont donc incompatibles avec les curseurs de type En avant seulement
    (dbOpenForwardOnly)."

  2. #2
    Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2013
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2013
    Messages : 46
    Points : 40
    Points
    40
    Par défaut
    J'ai résolu le problème.

    En refermant mon recordset et en le ré-ouvrant à chaque bouton, ça remet le curseur sur le premier enregistrement.

    J'ouvre mon recordset sur le load de ma page et je ferme sur le close.

    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Galerie avec bouton précédent/suivant
    Par Benben1337 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 05/07/2015, 01h53
  2. Boutons précédent-suivant + champ obligatoire
    Par san1981 dans le forum Langage
    Réponses: 1
    Dernier message: 24/09/2008, 21h56
  3. Réponses: 7
    Dernier message: 17/07/2008, 11h10
  4. [MySQL] Bouton précédent suivant (pagination)
    Par anouk77 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 21/12/2007, 14h26
  5. Réponses: 2
    Dernier message: 16/11/2007, 12h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo