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

IHM Discussion :

Numéro Auto dans un formulaire


Sujet :

IHM

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 9
    Points : 3
    Points
    3
    Par défaut Numéro Auto dans un formulaire
    Bonjour,

    Je suis débutant en access et je souhaiterais savoir comment je peux mettre en place dans mon formulaire, un champ de ma table qui se met en numéro auto sachant qu'au niveau de ma table je ne peux pas mettre l'onglet "numéro auto" car j'ai des liens et cela me le refuse... donc si vous avez un code ou je ne sais pas quoi cela me serais très utile...

    En vous remerciant!

    Sylvain.

  2. #2
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 044
    Points
    16 044
    Par défaut
    Bonjour,

    Un champ de type NuméroAuto se met dans une table, c'est tout. C'est Access qui attribue lui-même les valeurs aux nouveaux enregistrements de la table.

    Bien sûr, tu peux l'afficher dans un formulaire (mais pas le modifier).

    Quand tu dis :

    sachant qu'au niveau de ma table je ne peux pas mettre l'onglet "numéro auto" car j'ai des liens et cela me le refuse...
    J'ai surtout un sérieux doute sur le modèle relationnel de ta base de données.

    un peu plus d'explication sur ce que tu veux faire et éventuellement poster une image de ta fenêtre des relations serait bienvenu.

    Domi2

  3. #3
    Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Juillet 2012
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 54
    Points : 69
    Points
    69
    Par défaut
    bonjour,
    Une solution serai de compter le nombre d'enregistrement de ta table avec une fonction "cptedom("*";"[MaTable]) et d'ajouter +1. Ton nouveau numéro correspond en fait au nombre d'enregistrement de ta table. ATTENTION au risque de doublons avec les enregistrements que tu as déjà.
    L'autre solution serai peut être de supprimer les enregistrement des tables, de mettre en place la numérotation automatique et de recréer tes enregistrement. Ce n'est peut être pas faisable ou cela prendrait beaucoup de temps (surtout si cela concerne un grand nombre d'enregistrement)
    C'est tout ce que j'ai comme idée...pour le moment
    bon courage ----- @+ -----
    Baloo84

  4. #4
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    Merci pour votre réponse.

    Mon modèle est bon car il a été vérifier par un prof de SGBD. Maintenant ce que je veux réèlement c'est un champs qui se trouve dans un formulaire de le remplir automatiquement en l'incrémentant +1 à chaque fois. J'ai penser à créer un bouton qui permettrai l'ajout d'un nouvel enregistrement + l'incrémentation +1 de mon champ.

    Si vous avez d'autres éclaircissement...

  5. #5
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    Pour la suppression des données, je peux le faire mais j'ai déja essayé et acces me dit qu'il faut enlever les liaisons... voici le message exacte qu'il me di :

    "Impossible de changer le type de données ou la taille de ce champ. Il est utilisé dans une ou plusieurs relations. Si vous voulez changer le type de données, supprimer d'abord ses relations dans la fenêtre relations"

    voila..

    Si vous voulez j'ai mis le formulaire en pièce jointe
    Images attachées Images attachées  

  6. #6
    Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Juillet 2012
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 54
    Points : 69
    Points
    69
    Par défaut
    bin suffit ensuite d'ouvrir la page des relations entre tables, de suprimer le lien entre les deux tables,
    tu pourras ensuite modifier ta table avec le numéro auto....
    J'espère avoir été clair, sinon n'hésite pas
    Baloo84

  7. #7
    Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Juillet 2012
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 54
    Points : 69
    Points
    69
    Par défaut
    Je précise que tu peux acceder aux relation en utilisant le menu :
    Outils => relation
    Bon courage
    Baloo 84

  8. #8
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 044
    Points
    16 044
    Par défaut
    Citation Envoyé par vainvain56250 Voir le message
    Mon modèle est bon car il a été vérifier par un prof de SGBD. Maintenant ce que je veux réellement c'est un champ qui se trouve dans un formulaire et de le remplir automatiquement en l'incrémentant +1 à chaque fois.
    Il s'agit donc d'un "compteur" personnalisé et non d'un champ de type NuméroAuto.

    Je te conseille de faire une recherche sur le forum, ce sujet à déjà été abordé à de multiples reprises.

    Domi2

  9. #9
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par Baloo84 Voir le message
    Je précise que tu peux acceder aux relation en utilisant le menu :
    Outils => relation
    Bon courage
    Baloo 84
    D'accord mais si je supprime mes relations, je perd toute ces relations apres... (car le modele conceptuel, je l'ai réalisé sur power amc)

  10. #10
    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 à tous,
    ...c'est un champs qui se trouve dans un formulaire de le remplir automatiquement en l'incrémentant +1 à chaque fois
    Ce code "récupère" la valeur maximum du champ [Id_Matricule] de la table (T_Personnels) et l'incrémente de 1..
    ..et l'affiche dans le contrôle [ChampFormulaire] du formulaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.ChampFormulaire = DMax("Id_Matricule", "T_Personnels") +1

  11. #11
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par FreeAccess Voir le message
    Bonjour à tous,


    Ce code "récupère" la valeur maximum du champ [Id_Matricule] de la table (T_Personnels) et l'incrémente de 1..
    ..et l'affiche dans le contrôle [ChampFormulaire] du formulaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.ChampFormulaire = DMax("Id_Matricule", "T_Personnels") +1
    Bonjour,

    j'arrive à effectuer cela maintenant, j'aimerais pouvoir le faire quand je lance un nouvel enregistrement grâce à un bouton, est ce que vous pouvez me donner le code que quand je clique sur ce bouton cela m'ouvre un nouvel enregistrement et en même temps cela mette mon champ à +1 (champ max +1)

  12. #12
    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
    Cela dépend de comment tu "crées" ton nouvel enregistrement.....

    Si tu le fais à partir d'un formulaire indépendant, puis tu "enregistre" cet enregistrement après contrôle, tu peux ajouter ce code dans l'événement "Sur activation" du formulaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.ChampFormulaire = DMax("MonChamp", "MaTable") +1

  13. #13
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par FreeAccess Voir le message
    Cela dépend de comment tu "crées" ton nouvel enregistrement.....

    Si tu le fais à partir d'un formulaire indépendant, puis tu "enregistre" cet enregistrement après contrôle, tu peux ajouter ce code dans l'événement "Sur activation" du formulaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.ChampFormulaire = DMax("MonChamp", "MaTable") +1
    Merci cela marche l'incrémentation, maintenant ce que je souhaiterais c'est que quand j'appuie sur le bouton de l'incrémentation un nouvel enregistrement s'affiche au niveau de ma table sur le formulaire ( car là quand j'appuie je vient juste modifier la valeur de mon champ où j'incrémente, je souhaiterais donc ouvrir en + un nouvel enregistrement...)

    Voici une image de ce que je veux faire :

    Cela sera beaucoup plus clair, Merci bien
    Images attachées Images attachées  

  14. #14
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par vainvain56250 Voir le message
    Merci cela marche l'incrémentation, maintenant ce que je souhaiterais c'est que quand j'appuie sur le bouton de l'incrémentation un nouvel enregistrement s'affiche au niveau de ma table sur le formulaire ( car là quand j'appuie je vient juste modifier la valeur de mon champ où j'incrémente, je souhaiterais donc ouvrir en + un nouvel enregistrement...)

    Voici une image de ce que je veux faire :

    Cela sera beaucoup plus clair, Merci bien
    C'est bon, j'ai réussi, merci beaucoup. Maintenant par contre comment on fait afin de mettre un message d'erreur si on n'oublie de remplir un champ dans le formulaire s'il vous plait

  15. #15
    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
    La aussi, plusieurs solutions en fonction de comment tu gères tes enregistrements....

    Si ton formulaire de saisie est lié à une table ou requête, tu peux contrôler ceci sur l'événement "Sur activation" dont le code s’exécute :
    - lorsque tu passe d'un enregistrement à l'autre
    - sur actualisation de l'enregistrement
    - sur fermeture du formulaire

    Sur un formulaire indépendant, mettre le code sur le bouton de fermeture de ce formulaire...

    Code minimal pour vérifier qu'un champ particulier a été saisis..:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    If IsNull(MonChamp) Then
        If MsgBox("Le champ " & MonChamp & " doit être rempli", vbExclamation, "Erreur de saisie") = vbOK Then
        MonChamp.SetFocus
        Exit Sub
        End If
    End If
    ....mais il y a une infinité de possibilités

Discussions similaires

  1. [AC-2003] Problème d'export d' un numéro auto dans un fichier texte
    Par vali25 dans le forum Access
    Réponses: 1
    Dernier message: 03/04/2012, 10h54
  2. Date du jour auto dans champ formulaire
    Par kck61 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 31/10/2011, 14h54
  3. Date auto dans un formulaire
    Par philou029 dans le forum Langage
    Réponses: 7
    Dernier message: 10/07/2007, 14h14
  4. Bug dans numéros auto
    Par billyboy dans le forum Access
    Réponses: 2
    Dernier message: 18/04/2006, 17h53
  5. Numéro auto dans une requete
    Par genius99 dans le forum Access
    Réponses: 4
    Dernier message: 06/10/2005, 09h40

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