Ajout de caractères dans champs table ACCESS

Frédéric -  
blux Messages postés 2060 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour le forum,

Je voudrais ajouter les enregistrements du champ "Matricule" d'une table ACCESS autant de "0" nécessaire pour que la longueur du champ qui est initialement à 5 soit à 8 caractères.
Par la suite je voudrais vérifier la présence chaque enregistrement du champ cette table dans une autre table de la base qui possède aussi le champ matricule.

Merci pour votre aide

Frédéric

5 réponses

  1. kubito Messages postés 316 Date d'inscription   Statut Membre Dernière intervention   12
     
    slt,

    je pense que tu peux faire un masque de saisie dans les propriétes de ton champs. Jette un coup d'oeil egalement au format de ton champ.
    Bon courage

    bye

    _______________________________
    SCV ready to go sir
    0
    1. Frédéric
       
      Bonjour Kubito,

      Merci pour ta réponse mais quand est -il pour la recherche des enregistrements dans une deuxième table ?
      0
    2. kubito Messages postés 316 Date d'inscription   Statut Membre Dernière intervention   12
       
      fred,

      pourrais repeter cette histoire de matrcule ; je ne comprends pas tres bien ta question. Merci

      bye

      _______________________________
      SCV ready to go sir
      0
      1. Frédéric > kubito Messages postés 316 Date d'inscription   Statut Membre Dernière intervention  
         
        Re-bonjour Kubito,

        J'ai une base de données ACCESS qui contient deux tables.
        Dans la première table, il y a trois champs :
        - code Matricule (longueur : 5; Numérique)
        - nom (longueur : 20 ; Texte)
        - prenom (longueur : 20 ; Texte)

        dans la deuxième table, j'ai la même structure avec comme différence la longueur du premier champ qui est 8 caractères

        Je souhaite faire deux choses:

        1-/ Après avoir modifier (numérique ==> Texte) le type du champ code Matricule de la 1ère table, ajouter autant de "0" à chaque enregistrement pour atteindre une longueur de 8 caractères.

        2-/ Créer un 4ème champs dans la première table intitulé "Recherche" et ayant les valeurs soit "VRAI" si le matricule de l'enregistrement existe dans la deuxième table, soit "FAUX" s'il n'y est pas.

        Merci

        Frédéric
        0
  2. kubito Messages postés 316 Date d'inscription   Statut Membre Dernière intervention   12
     
    OK.

    Dans la 2ème table, le champs matricume est numerique de taille 8. OK ? Au fait pourkoi la taille passe de 5 à 8 ?
    Secundo, as tu des notions de programmation VB car apparemment, on va en avoir besoin.

    _______________________________
    SCV ready to go sir
    0
    1. Frédéric
       
      Kubito,

      On passe de 5 à 8 caractères parce que tout simplement la code matricule a été modifié pour permettre avoir plus d'enregistrement dans la table.

      Je me disais que la programmation en VBA serait certainement nécessaire. J'ai quelques notions de VB sous EXCEL mais je suis une bille sous VBA / ACCESS.

      Fred
      0
    2. Frédéric
       
      Bonjour,

      Je n'ai toujours pas eu de solution à mon problème. Si d'aventure quelqun a une idée de solution, je suis preneur.

      Merci

      Fred
      0
  3. marvinrouge
     
    Salut,
    jettes un oeil sur la fonction convert
    'si elle existe sous Access)

    et fais un truc du style

    insert into table2
    select convert('char' , convert('int', champs5), 8)

    <<pas sûr que ça marche ...>>
    0
  4. Frédéric
     
    Bonjour Marvinrouge,

    Merci pour ton idée, mais désolé, cela ne résout pas mon problème qui est en fait pour chaque enregistrement du champ "MATRICULE" de rajouter autant de "0 (zéro)" pour atteindre une longueur de 8 caractères.

    Merci quand même

    Fred
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. kubito Messages postés 316 Date d'inscription   Statut Membre Dernière intervention   12
     
    slt,

    dis moi, tes matrivules de base ont tous le meme nombre de chiffre ?

    _______________________________
    SCV ready to go sir
    0
    1. Frédéric
       
      Salut,

      Le format initial du champ matricule étant "numérique", les données de ce champ n'ont pas tous la même longueur par contre la longueur du champ étant 5, il n'y a pas de valeur >= à 100000.

      Merci

      Fred
      0
    2. blux Messages postés 2060 Date d'inscription   Statut Modérateur Dernière intervention   3 455
       
      Salut,

      dans ACCESS, les données sont stockées sous leur forme normale, il n'est pas possible de définir un champ numérique de 5 car, seul l'affichage qu'on peut en faire dans un formulaire peut limiter le nombre visible.

      Je te conseillerais de passer ton champ en "texte".

      Mais si tu ne veux pas, il te faudra passer par des requêtes intermédiaires : multiplication par 100000000, puis découpage du champ par la fonction left pour ne prendre que les n premiers...

      A+ Blux
       "Les cons, ça ose tout.
      C'est même à ça qu'on les reconnait"
      0