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

Modélisation Discussion :

Génération de numérotation selon la famille d'un article


Sujet :

Modélisation

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Bâtiment

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Génération de numérotation selon la famille d'un article
    Bonjour


    J'aimerais mettre les articles d'un magasin de pièces de rechange dans une base de donnée. et je voudrais bien trouver un solution pour numéroter les articles selon leur Famille.
    Par exemple: pour les pièces de la famille AB la numérotation sera AB01 AB02
    Et si on introduit un produit d'une autre famille CD. La numérotation se rénitialise Ca sera CD01. Et si on reintroduit un produit de la famille son numéro sera logiquement AB03.
    Si vous avez une solution ça m'aidera beaucoup parceque on a plusieurs produits et plusieurs familles. La numérotation manuel sera compliquée.

    Merci

  2. #2
    Membre expert
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2012
    Messages
    1 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1 871
    Points : 3 457
    Points
    3 457
    Par défaut
    Bonjour Lordakon,

    Une solution possible: Tu ajoutes dans ta table un champ "Famille" au format texte qui est le champ qui représente la famille ex. AB. 2 autres champs "Numero_Produit" au format texte et "Numero_C" au format numérique.

    Dans ton formulaire de saisie sur l'événement AfterUpdate de ton champ "Famille":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Famille_AfterUpdate()
     
        If IsNull(Me.Numero_Produit) Then
            Me.Numero_Produit = fuNumProduit (Me.Famille)
            me.Numero_C = fuNumProduitC (Me.Famille)
        End If
     
    End Sub
    Et dans un module les 2 fonctions suivantes:
    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
    Public Function fuNumProduit(strProduit As String) As String
     
        Dim strResultat As String
        strResultat = Nz(DMax("Numero_C", "TaTable", "[Famille]='" & strProduit & "'"), 0) + 1
        Select Case Len(strResultat)
            Case 1
                strResultat = "00" & strResultat
            Case 2
                strResultat = "0" & strResultat
            Case 3
                strResultat = strResultat
            Case Else
                MsgBox "Vous avez dépassé la capacité maximum pour ce produit!", vbCritical
                Exit Function
        End Select
        fuNumProduit = strProduit & strResultat
     
    End Function
    Public Function fuNumProduitC(strProduit As String) As Integer
     
        Dim inNombre As Integer
        inNombre = Nz(DMax("Numero_C", "TaTable", "[Famille]='" & strProduit & "'"), 0) + 1
        If inNombre > 999 Then
            MsgBox "Vous avez dépassé la capacité maximum pour ce produit!", vbCritical
            Exit Function
        End If
        fuNumProduitC = inNombre
     
    End Function
    Tu pourrais combiner les 2 fonctions ce qui serait plus joli et donnerait seulement un message d'erreur. Mais si vous allez vers Access 2010 ce sont des fonctions qui fonctionnent bien avec des DataMacro.

    Bonne journée
    Ce qui se conçoit bien s’énonce clairement et les mots pour le dire arrivent aisément. Nicolas Boileau
    Si tout est OK, n'oubliez pas de cliquer sur

Discussions similaires

  1. [XL-2007] numérotation selon une critère
    Par wided123 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 04/12/2012, 17h39
  2. Génération d'un état selon plusieurs criteres
    Par nico62370 dans le forum IHM
    Réponses: 1
    Dernier message: 06/12/2008, 06h48
  3. Réponses: 5
    Dernier message: 19/05/2008, 17h13
  4. Numérotation automatique selon les utilisateurs
    Par Safaritn dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 12/08/2005, 14h11

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