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 :

Comment se fixer sur un recordset


Sujet :

Access

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 20
    Points : 11
    Points
    11
    Par défaut Comment se fixer sur un recordset
    Bonjour;
    Je ss en train de créer une BD access et j'ai un ptitsouci, lorsque je met un formulaire en mode modification, je voudrais qu'il se fige sur l'enregistrement en cours, mais j'arrive pas à interdire la navigation entre enregistrements.
    En plus je voudrais savoir comment donner à un champ, la valeur du prochain lundi (à partir d'une date X)???
    Si quelqu'un peut m'aider, merci d'avance:!

  2. #2
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Il suffit de modifier la propriété RecordSource du formulaire de telle sorte que ce soit une requête qui ne retourne qu'un seul enregistrement

    Pour la date du prochain lundi, c'est une question de mathématique. Pose sur papier ce que signifie trouver la date du prochain lundi et tu t'en sortiras aisément.

    Les fonctions utiles : DateSerial, Day, DateAdd

  3. #3
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Bonjour,

    Perso, dans mes bases pour interdire le passage d'un enregistrement à l'autre lors d'une modification, j'emploi la méthode suivante:

    -J'ai un Form (F_Saisie) qui me permet à l'aide d'une liste déroulante d'accéder à un de mes enregistrements. Je peux également le faire à l'aide des touches PageHaut / PageBas qui dans ce cas son active.
    Dans l'événement 'Sur touche appuyée' de F_Saisie, je tape ce code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    'Empêcher Touche PageUp/PageDown/END/ORIGINE/Flêche DROITE et GAUCHE lors passage en MODIFICATION (Flag=1)
    If Flag = 1 Then
        If KeyCode = vbKeyPageUp Or KeyCode = vbKeyPageDown Or KeyCode = vbKeyEnd _
        Or KeyCode = vbKeyHome Or KeyCode = vbKeyUp Or KeyCode = vbKeyDown Or KeyCode = vbKeyLeft _
        Or KeyCode = vbKeyRight Then KeyCode = 0
    End If
    End Sub
    Explication: Tant que la variable public FLAG n'est pas égale à 1 alors les touches de déplacement sont actives.

    Sur ce même Form, j'ai un bouton qui me permet de passer en mode Modification, avec sur l'événement 'Sur clic' :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub CdeB_Modification_Click()
    'ICI la variable FLAG passe à 1, donc les commandes de déplacements ne sont plus actives
    Flag = 1
     
    'Désactiver molette souris
    Dim blRet As Boolean
    blRet = MouseWheelOFF(False)
     
    'Passage mode MODIFICATION
    Me.Caption = "*** MODIFICATION ***"
    .....
    ..... le reste du code
    Bien sur ceci n'est qu'un exemple, à toi de l'adapter à tes besoins. Sinon la solution de Tofalu est de loin la meilleur, car là au moins on n'a plus ce problème
    Eventuellement toutes corrections ou meilleur manière de procéder sont les bienvenue ..
    Bonne continuation

    FreeAccess

  4. #4
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    Merci pour votre intêret;
    Freeaccess, j'avais procédé avec la mm méthode que toi mais j'arrive pas a désactiver la molette de la souris, la fonction mousewheeloff n'est pas reconnue (elle appartient peut etre a une bibliothéque speciale?).
    Tofalu, eske tu peux me donner la propriété qui permet de mettre mon recordset sur un seul enregistrement??
    merci.

  5. #5
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut Pb souris
    Re,

    mais j'arrive pas a désactiver la molette de la souris, la fonction mousewheeloff n'est pas reconnue (elle appartient peut etre a une bibliothéque speciale?).
    Effectivement, elle fait appel à une fonction pour pouvoir gérer la roulette de la souris, afin d'empécher le passage vers un autre enregistrement.
    Regarde ICI, pour un exemple : http://access.developpez.com/faq/?pa...#molettesouris

    Consulte également les tutos de Arkham46 sur le sujet (que je remercie d'ailleurs pour tout ce qu'il nous apprends )

    Bonne continuation.

Discussions similaires

  1. :arrow: Comment se referencer sur google ?
    Par vico dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 19/08/2005, 13h47
  2. TDBLookuplistbox comment l'envoyer sur la ligne voulue?
    Par pacs dans le forum Bases de données
    Réponses: 4
    Dernier message: 16/03/2005, 08h46
  3. Précisions sur les recordset DAO
    Par Igricheff dans le forum VBA Access
    Réponses: 2
    Dernier message: 18/01/2005, 17h16
  4. test sur un recordset
    Par georgeabitbol dans le forum ASP
    Réponses: 2
    Dernier message: 15/07/2004, 14h39
  5. [Kylix] Comment installer Kylix sur Mandrake 8.2 (page2)
    Par Philippe LE PONT dans le forum EDI
    Réponses: 3
    Dernier message: 01/05/2002, 12h52

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