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 :

[AC-2013 - AC-2016] Incrément automatique sur trois champs Access


Sujet :

Access

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2019
    Messages : 10
    Points : 1
    Points
    1
    Par défaut [AC-2013 - AC-2016] Incrément automatique sur trois champs Access
    Bonjour à tous, professionnels et/ou passionnés,

    Je suis nouveau inscrit sur le forum. Tout d'abord merci beaucoup au forum et aux contributeurs pour tous ce que vous apportez.

    Quelques données concernant mon projet :

    Objet: Base de donnée Access pour une plateforme de travail à destination d'un laboratoire d'analyse et recherche en génétique.

    Version utilisée: Acces 2013 - Access 2016.

    Contexte de la problématique :

    Comme précisé ci-dessus nous créons progressivement une plateforme de travail qui offre de nombreuses fonctionnalités de travail, notamment impression de protocole technique, archivage de données etc …
    Parmi ces fonctionnalités nous avons une DNAthèque (bibliothèque d'ADN).
    Représenter par une table, un formulaire de recherche à multicritères (inspiré d'un tutoriel très bien fait du forum), un second formulaire de saisie/visualisation lié au formulaire de recherche, qui permet de visualiser un certain nombre de données pour tel ou tel ADN enregistré. Différentes macros incorporées et code VBA sont intégré pour facilité la saisie et rentre l'utilisation plus intuitive (bouton verouillage/déverouillage …)

    Informations utiles concernant le problème :

    - La table possède une clé primaire qui correspond simplement au numéro d'enregistrement saisie de manière hiérarchique (nous en sommes à 230 enregistrements)
    - Les ADN figurants dans la DNAthèque sont congelés à -80°C dans des compartiments/Boites de 80 positions.
    - Les ADN vont toujours par pairs 1 et 2 puis 3 et 4 .. côte à cote dans la boite jusqu'à 80 , ainsi une nouvelle boite s'ouvre (boite_1 …, boite_2 ….,boite_3....).
    - Dans le formulaire il existe un bouton "ajouter", pour les nouveaux enregistrements.
    - Au clic certaines données apparaissent par défaut, il existe différents masques de saisie ou valeurs par défaut pour guider l'utilisateur dans la saisie.
    - Pour les champs concernant la DNAthèque rien n'est noté ou automatiser il faut que l'utilisateur trouve le dernier enregistrement pour attribuer les positions qui suivent celui ci ….


    Ce que nous voulons (et que nous n'arrivons pas à réaliser) :

    Nous cherchons à faire dans le formulaire de saisie/visualisation un bouton qui incrémente au clique une position ( Numéro de boite, Pos1 et Pos2) pour les ADN en fonction du dernier enregistrement précédemment saisie. Nous avons essayé différentes choses mais je ne trouve pas la solution, SQL ? macro incorporé ? nous pensons que le VBA est le plus approprié pour une tel requête mais étant débutant, je ne trouve pas la solution.

    Pour effectuer une telle action je penses qu'il faut trois champs distincts dans la table . Nommés respectivement Boite ; Pos1 ; Pos2.

    - La boite toutes les 80 positions doit prendre +1,

    - Les Pos1 et Pos2 doivent fonctionner ensembles, par pair : si Pos1 = 1 alors Pos2 = 2 , autre exemple si Pos 1 =79 alors Pos2 =80

    - Enfin si Pos 2=80 Alors la boite est pleine il faut qu'elle prenne +1 pour passer à une nouvelle boite.

    Je ne sais pas si j'ai été très clair dans mes explications, mais je remercie par avance tous les gens qui se pencherons sur notre problème et essayerons d'y apporter une solution.

    Subsidiairement, si quelqu'un est en mesure d'apporter une solution deux questions sous-jacentes se posent :

    - Que se passe t'il si on supprime un enregistrement existant ?
    - Est il possible de modifier le contenu d'un des champs incrémentés sans qu'il y'ai une incidence sur les nouveaux enregistrements et sur l'incrémentation automatique ?(dans l'hypothèse ou nous aurions des cas particuliers pour certains ADNs qui ne fonctionneraient pas par PAIR nous aimerions rentrer la mention "vide" en Pos1 ou Pos2 selon les cas).



    Je me doute fort que notre demande est complexe, merci à tous, montrez nous votre talent .

    Cordialement

  2. #2
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 760
    Points : 14 795
    Points
    14 795
    Par défaut
    bonsoir,
    c'est vrai que la formule de création des boîtes et des positions n'est pas si simple, mais avec un peu de réflexion ce la donne ceci :
    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
    Private Sub btnNvPos_Click()
    Dim lgDernBoite As Long
    Dim lgDernPos As Long
    Dim strSQL As String
    Dim strMsg As String
    ' Recherche de la dernière boite
    lgDernBoite = Nz(DMax("Boite", "T_DNABOX"), 0)
     
    ' Recherche dernière position de la dernière boite
    If lgDernBoite <> 0 Then
        lgDernPos = Nz(DMax("pos2", "T_DNABOX", "Boite=" & lgDernBoite), 0)
    ' chargement d'une nouvelle boite si on a atteint les 80 positions
        If lgDernPos = 80 Then
            lgDernBoite = lgDernBoite + 1
            lgDernPos = 1
            strMsg = "Voulez-vous créer une nouvelle boîte ?"
        Else
    ' sinon on ajoute 2 positions à la boite existante
            strMsg = "Voulez-vous créer une nouvelle ligne pour la boîte ?"
            lgDernPos = lgDernPos + 1
        End If
    Else
        lgDernBoite = 1
        lgDernPos = 1
        strMsg = "Voulez-vous créer la première boîte ?"
    End If
     
    If MsgBox(strMsg, vbQuestion + vbYesNo) = vbYes Then
        strSQL = "Insert into T_DNABOX(Boite,Pos1,Pos2) values (" & lgDernBoite & "," & lgDernPos & "," & lgDernPos + 1 & ");"
    ' Exécution de la requète d'ajout
        CurrentDb.Execute strSQL, dbFailOnError
    ' mise à jour du formulaire et affichage du dernier enregistrement
        Me.Requery
        DoCmd.GoToRecord acDataForm, Me.Name, acLast
    End If
     
    End Sub
    en prime une base pour tester :
    BaseDNABox.zip

  3. #3
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 760
    Points : 14 795
    Points
    14 795
    Par défaut
    Que se passe t'il si on supprime un enregistrement existant ? on peut l"empêcher en mettant la propriété du formulaire "Suppression autorisée" à non
    - Est il possible de modifier le contenu d'un des champs incrémenter sans qu'il y'ai une incidence sur les nouveaux enregistrements et l'incrémentation automatique ?(dans l'hypothèse ou nous aurions des cas particuliers pour certains ADN qui ne fonctionneraient pas par PAIR nous aimerions rentrer la mention "vide" en Pos1 ou Pos2 selon les cas). oui, c'est du domaine du possible si on considère que le nombre de positions (donc le contenu d'une boite) est toujours 80. Dans ce cas: Pos1 et Pos2 vides peuvent s'apparenter à une suppression de la ligne non ?

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2019
    Messages : 10
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    Tee_grandbois merci beaucoup pour ton intérêt et du temps que tu as passé à proposer/trouver une solution à notre problème. Je vais maintenant essayer de reproduire le code et de le mettre en application.

    Quand j'entendais la notion de Pos vide, il s'agirait uniquement d'une Pos vide pour Pos1 OU Pos2, il y'aurait tout de même un ADN sur les deux dans la DNA thèque donc l'enregistrement existerait malgré tout, ca ne s'apparente donc pas à une suppression, mais plutôt à des cas particuliers qui peuvent se présenter pour certaines techniques, certaines pathologies …. merci à toi encore.


    Cordialement
    Mickael.

  5. #5
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 760
    Points : 14 795
    Points
    14 795
    Par défaut
    bonjour Mickael30620,
    au vu de tes réponses, je peux te proposer une autre version pour prendre en compte qu'une des 2 positions peut-être vide ...

  6. #6
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2019
    Messages : 10
    Points : 1
    Points
    1
    Par défaut
    Je ne refuse pas l'offre , mais je ne veux pas abuser de ton temps,

    Ca serait vraiment l'idéal, merci.


    Mickael

  7. #7
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 760
    Points : 14 795
    Points
    14 795
    Par défaut
    je ne refuse pas l'offre , mais je ne veux pas abuser de ton temps,
    en même temps, c'est moi qui propose ...

  8. #8
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 760
    Points : 14 795
    Points
    14 795
    Par défaut
    voici le code modifié, en fait les modifications apportées sont mineures: je ne recherche plus la valeur de la dernière position 2 de la dernière boîte mais le nombre de lignes :
    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
    Private Sub btnNvPos_Click()
    Dim lgDernBoite As Long
    Dim lgDernPos As Long
    Dim strSQL As String
    Dim strMsg As String
    ' Recherche de la dernière boite
    lgDernBoite = Nz(DMax("Boite", "T_DNABOX"), 0)
     
    ' Recherche du nombre de lignes de la dernière boite
    If lgDernBoite <> 0 Then
        lgDernPos = Nz(DCount("*", "T_DNABOX", "Boite=" & lgDernBoite), 0)
    ' création d'une nouvelle boite si on a atteint les 40 lignes 
        If lgDernPos = 40 Then
            lgDernBoite = lgDernBoite + 1
            lgDernPos = 1
            strMsg = "Voulez-vous créer une nouvelle boîte ?"
        Else
    ' sinon on ajoute une nouvelle ligne à la boite existante
            lgDernPos = (lgDernPos * 2) + 1
            strMsg = "Voulez-vous créer une nouvelle ligne pour la boîte ?"
        End If
    Else
    ' création de la première boite
        lgDernBoite = 1
        lgDernPos = 1
        strMsg = "Voulez-vous créer la première boîte ?"
    End If
     
    If MsgBox(strMsg, vbQuestion + vbYesNo) = vbYes Then
        strSQL = "Insert into T_DNABOX(Boite,Pos1,Pos2) values (" & lgDernBoite & "," & lgDernPos & "," & lgDernPos + 1 & ");"
    ' exécution de la requète d'ajout
        CurrentDb.Execute strSQL, dbFailOnError
    ' mise à jour du formulaire et affichage du dernier enregistrement
        Me.Requery
        DoCmd.GoToRecord acDataForm, Me.Name, acLast
    End If
     
    End Sub

  9. #9
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2019
    Messages : 10
    Points : 1
    Points
    1
    Par défaut
    Merci beaucoup pour cette solution encore plus aboutit.

    J'essaye de mettre en œuvre le code que tu as développé mais je rencontre un soucis. Ton exemple de base de donnée, ajoute une nouvelle ligne à chaque clic sur bouton dans ton formulaire. Sur mon formulaire de visualisation désire associer la nouvelle incrémentation pour chaque enregistrement et avoir un champ de visualisation "unique" de la position de banque qui va varier en fonction de ma recherche multicritère (pour l'enregistrement actif).

    Est ce qu'il est plus judicieux de créer une table additionnel propre aux position de banque et de créer une relation avec ma table initiale ?
    Car une fois que je clique sur le bouton créer dans mon formulaire si je veux ajouter un enregistrement, le bouton pour l'incrémentation ne fonctionne pas.

    Penses-tu que je dois faire un unique bouton qui gère à la fois l'ajout du nouvel enregistrement et la création de la position de banque, pour palier le problème ? Si oui comme il s'agit d'une macro incorporer pour l'ajout d'enregistrement (assistant de création), quel code je peux ajouter sans perturber le VBA de l'incrémentation ?


    Encore merci.

  10. #10
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 760
    Points : 14 795
    Points
    14 795
    Par défaut
    Sur mon formulaire de visualisation désire associer la nouvelle incrémentation pour chaque enregistrement et avoir un champ de visualisation "unique" de la position de banque qui va varier en fonction de ma recherche multicritère (pour l'enregistrement actif). je ne comprend pas cet énoncé
    Est ce qu'il est plus judicieux de créer une table additionnel propre aux position de banque et de créer une relation avec ma table initiale ?
    Car une fois que je clique sur le bouton créer dans mon formulaire si je veux ajouter un enregistrement, le bouton pour l'incrémentation ne fonctionne pas. je ne comprend pas ta question et je ne vois pas ce qui se passe à ce moment dans le formulaire
    je n'ai pas ton modèle de données ni ta gestion via les IHM, ma proposition n'est pas une solution clé en mains, elle répond au besoin que tu as énoncé.
    Si tu souhaites l'adapter à ton modèle de données il faut que je connaisse la structure de la table et comment elle est utilisée dans les diverses IHM. Je peux t'aider mais il va falloir donner plus d'informations.

  11. #11
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2019
    Messages : 10
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par tee_grandbois Voir le message
    je n'ai pas ton modèle de données ni ta gestion via les IHM, ma proposition n'est pas une solution clé en mains, elle répond au besoin que tu as énoncé.
    Si tu souhaites l'adapter à ton modèle de données il faut que je connaisse la structure de la table et comment elle est utilisée dans les diverses IHM. Je peux t'aider mais il va falloir donner plus d'informations.

    Bonjour,
    désolé pour la réponse tardive. J'ai à nouveau essayer de trouver une solution avec les éléments de réponse que tu m'as apporté, je n'y arrive toujours pas ( c'est décidément un métier très complexe que vous faites ).

    Je te transmet la table, et les formulaires associés qui sont concerné par mon problème pour que tu vois comment les choses se présentent.
    Aurez tu une boite mail ou autre pour t'envoyer le fichier ? il fait 8mo compressé le forum le refuse.


    Merci encore.

  12. #12
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 760
    Points : 14 795
    Points
    14 795
    Par défaut
    bonjour,
    une copie de la base avec les objets concernés: le formulaire de visualisation et la table vide et la requête éventuellement devrait suffire.

  13. #13
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2019
    Messages : 10
    Points : 1
    Points
    1
    Par défaut
    Bonsoir Tee_grandbois,

    Une semaine après travail oblige, je te réponds en te joignant en copie la structure du fichier.

    Pour que tu comprennes ma problématique, qui en soit et simple à "schématiser". Le bouton "ajouter" dans le formulaire de saisie j'aimerais qu'il combine à la fois l'ajout d'un enregistrement dans la table et l'incrémentation automatique à l'aide du code que tu as élaboré plus haut dans la discussion C'est sa que je n'arrive pas à faire.


    En l'état si j'appuie sur "ajouter" un nouvel enregistrement se créer mais si derrière j'appuie sur le bouton "nouvelle position" l'incrément ne se fait pas sur l'enregistrement actif (le dernier créer).

    Je te laisse regarder le fichier joint qui j'espère sera plus parlant que mes propos. Te remerciant pour toute ton implication et que le travail que tu fournis gentiment et gracieusement pour m'aider.


    Cordialement Mickael

  14. #14
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2019
    Messages : 10
    Points : 1
    Points
    1
    Par défaut
    limite du forum 2Mo je suis désespéré pour mettre se fichier je n'y arriverai jamais ^^

  15. #15
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 760
    Points : 14 795
    Points
    14 795
    Par défaut
    bonsoir Mickael30620,
    limite du forum 2Mo je suis désespéré pour mettre se fichier je n'y arriverai jamais
    est-ce que la base a été compactée avant compression ?
    Si oui, peut être n'as-tu pas besoin de mettre la totalité des enregistrements de la table ou tous les objets ... Bref, il y a plein de moyens d'arriver à 2 Mo maxi.

  16. #16
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2019
    Messages : 10
    Points : 1
    Points
    1
    Par défaut
    je reviens vers vous une bonne dizaine de jours après congés !

    l'idée comme vous pourrez le constater dans le formulaire de visualisation, de combiné à la fois le bouton "nouvelle position" et le bouton "ajouter des primers", ce qui aurait pour action in fine de créer un nouvel enregistrement dans la table medias et d'y incrémenter les positions dans la foulée pour les champs boite/pos1/pos2 d'après les lignes de code que vous m'avez gentillement enseignées.

    Le bouton "ajouter des Primers" est une macro incorporée et non pas du VBA, je ne trouve pas le code que je pourrais associer au VBA du bouton "nouvelle position", pour en faire un unique.

    vous remerciant par avance,

    Mickael
    Fichiers attachés Fichiers attachés

  17. #17
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 760
    Points : 14 795
    Points
    14 795
    Par défaut
    bonsoir,
    Le bouton "ajouter des Primers" est une macro incorporée et non pas du VBA, je ne trouve pas le code que je pourrais associer au VBA du bouton "nouvelle position", pour en faire un unique.
    désolé, mais je n'ai pas bien compris pourquoi 2 boutons ?
    Car le bouton "ajouter des Primers" se contente d'exécuter la commande "Ajouter Nouveau" ce qui revient à ajouter un enregistrement vide: dans ce cas pourquoi ne pas le supprimer et utiliser uniquement "Nouvelle position" qui ajoute ce nouvel enregistrement et se positionne sur ce dernier ?

  18. #18
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2019
    Messages : 10
    Points : 1
    Points
    1
    Par défaut
    C'est ce que je cherche à faire …

    Mais quand je clique sur nouvelle position il incrémente bien des positions mais il ne se positionne pas sur le dernier, l'utilisateur ne peut donc pas compléter les autres informations…

  19. #19
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 760
    Points : 14 795
    Points
    14 795
    Par défaut
    je viens d'essayer et cela fonctionne correctement.
    Par contre, j'ai effectivement constaté que dans la base que tu as posté, le formulaire était filtré sur l'enregistrement 6:

    Nom : _2.JPG
Affichages : 359
Taille : 77,3 Ko

    cela ne fonctionnera pas si le formulaire est filtré car le filtre n'empêche pas la création du nouvel enregistrement mais empêchera d'y accéder. Il faut le désactiver mais cela peut se faire par code (à mettre avant l'instruction Me.Requery du code que j'ai fourni):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ' Suppression du filtre
    Me.Filter = ""
    Me.FilterOn = False
    pour ce qui concerne l'accès au code affecté au bouton "Ajouter des primers", il faut choisir [Procédure événementielle] à la place de [Macro incorporée]:

    Nom : _4.JPG
Affichages : 343
Taille : 29,1 Ko

    ensuite appuyer sur l'icône avec les 3 petits boutons au bout de la ligne et insérer ce code (la ligne 2 uniquement) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Ajouter_Click()
    Call Increment_Click
    End Sub
    Increment_Click est le code associé à l'évènement du bouton "nouvelle position".

    Je te joins la base modifiée:
    Database1_UP.rar

  20. #20
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2019
    Messages : 10
    Points : 1
    Points
    1
    Par défaut
    Juste le filtre et comme j'ai masqué les bandeaux dans la base …. je suis bête ... merci beaucoup pour ton aide, fonctionne parfaitement

Discussions similaires

  1. [XL-2016] Incrémentation automatique sur condition de date
    Par almat dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 21/04/2017, 20h12
  2. [AC-2010] Incrémentation automatique sur chiffre ou lettre en fonction d'un critère
    Par MelaAllIn dans le forum VBA Access
    Réponses: 3
    Dernier message: 27/08/2015, 14h17
  3. Réponses: 1
    Dernier message: 28/01/2009, 01h21
  4. Incrémentation Automatique d'un champ
    Par midotoon dans le forum SQL
    Réponses: 5
    Dernier message: 05/06/2007, 16h58
  5. incrémentation automatique d'un champ
    Par Simon2 dans le forum Access
    Réponses: 3
    Dernier message: 18/12/2006, 17h41

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