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 :

Incrémenter un champs à chaque changement de Nom [AC-2007]


Sujet :

Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2011
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 32
    Par défaut Incrémenter un champs à chaque changement de Nom
    Bonjour,

    Tout est dans le titre et dans l'exemple ci-dessous:

    NOM |Jour |Champs Incrémenté

    Daniel |Lundi |1
    Daniel |Mercredi |2
    Daniel |Vendredi |3
    Antoine |Lundi |1
    Francis |Lundi |1
    Francis |Samedi |2
    Francis |Dimanche |3
    Thomas |Lundi |1
    Thomas |Mardi |2

    etc...

    Merci d'avance,

    JP

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Est-ce que c'est au fur et à mesure de l'entrée des données (dans ce cas, il faudrait donner des précisions).

    Ou est-ce que c'est une fois pour toute ?

    Philippe

  3. #3
    Membre averti
    Inscrit en
    Février 2011
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 32
    Par défaut
    Bonjour,

    C'est une table qui sera supprimée et recréer, avec le nombre d'enregistrement total pouvant varier.

    Peut être que la prochaine fois, on aura que deux enregistrements pour le nom "Francis".

    merci,

    JP

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 399
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 399
    Par défaut
    Une requête, ça irait ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    SELECT T.nom,
           T.jour,
           (SELECT Count(*)
            FROM   brasileiro
            WHERE  nom = T.nom
                   AND Switch(jour = "lundi", 1, jour = "mardi", 2, jour = "mercredi", 3, jour = "jeudi", 4, jour = "vendredi", 5, jour = "samedi", 6, jour = "dimanche", 7) <=
               Switch(T.jour = "lundi", 1, T.jour = "mardi", 2, T.jour = "mercredi", 3, T.jour = "jeudi", 4, T.jour = "vendredi", 5, T.jour = "samedi", 6, T.jour = "dimanche", 7)) AS Inc
    FROM   brasileiro AS T
    ORDER  BY T.nom,
    Switch(T.jour = "lundi", 1, T.jour = "mardi", 2, T.jour = "mercredi", 3, T.jour = "jeudi", 4, T.jour = "vendredi", 5, T.jour = "samedi", 6, T.jour = "dimanche", 7);
    Philippe

  5. #5
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Par défaut
    Salut PhilippeS ;P et bienvenu Brasileiro,

    Je suppose que pour un NOM il peut exister plusieurs Jour identique non? et que cela commence pas forcément par un lundi?
    il se peut qu'un NOM se trouve parsemé ailleurs dans la liste?
    l'ordre de l'exemple est un ordre de saisie? existe-t-il dans ce cas un champ définissant cet ordre de saisie: date, autoincrément...?


  6. #6
    Membre averti
    Inscrit en
    Février 2011
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 32
    Par défaut
    Bonsoir Philben et Vodiem,

    Philben,
    merci de ton aide mais je pense que cela doit être encore plus simple, car je n'ai renseigner des jour de semaine qu à titre d exemple.
    En effet, la table est constituée de code produit à 6 chiffres, une position de taille et le champs qui recevra l'incrementation.

    Exemple

    Code produit | position taille | champ incrémenté
    111456 |4 |1
    111456 |6 |2
    111456 |7 |3
    222577 |6 |1
    222577 |7 |2
    454599 |3 |1
    454599 |5 |2
    454599 |6 |3

    À chaque changement de code, l incrementation repart de 1.

    Vodiem,

    1) en effet on peut avoir pour un même code, 2 position de taille identique.
    Pour ce cas je souhaite qu il incrémente la série comme l exemple ci-dessous:
    222577 |6 |1
    222577 |7 |2
    454599 |3 |1
    454599 |3 |2
    454599 |6 |3

    2) ça commencera toujours par 1

    3) en effet ils se trouve que le nom soit parsemé, cependant je me debrouillerait pour trier la table par ordre croissant d abord par les codes produits puis par la position de taille , pour ensuite faire l incrément.

    4) pas d'ordre de saisie,ni autoincrement.

    Merci d avance pour votre aide

    JP

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

Discussions similaires

  1. [AC-2007] Dans requetes, changement parasite nom de champ "PV" vers "VA"
    Par TaoDev dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 05/02/2010, 15h37
  2. [XL-2003] changement du nom d'un objet à chaque ouverture d'excel
    Par pastis.vi dans le forum Excel
    Réponses: 7
    Dernier message: 18/11/2009, 15h39
  3. Réponses: 6
    Dernier message: 04/05/2009, 14h59
  4. Réponses: 10
    Dernier message: 20/04/2007, 11h41
  5. [VBA-E] Excel transfert de cellules à chaque changement de nom
    Par zootman dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 09/06/2006, 10h29

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