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 :

Numéro auto personnalisé


Sujet :

Modélisation

  1. #1
    Membre à l'essai
    Numéro auto personnalisé
    Bonjour,
    Je sais pouvoir compter sur chacun de vous pour résoudre mes petits soucis...

    J'aurai une toute petite question mais qui me semble TRES dur a réaliser...
    Je ne suis pas un chevronné du tout mais rien de très recherché dans ma demande non plus: une toute petite base ACCES que je réalise,

    J'aimerai que mon numéro ID de ma table (disons numéro de facture) soit automatique (c'et la clé) mais personnalisé du type ANNEE-MOIS-00X

    J'ai lu avec beaucoup d'attention le tutoriel (ici) mais je n'y arrive pas.

    Quelqu’un aurait il la gentillesse de m'expliquer pas à pas que faire s'il vous plait?

    Merci beaucoup

  2. #2
    Membre expert
    Salut
    Soit la table tblFacture(idfact, datefact, indice, numfact, etc.)
    Copiez le code ci-dessous dans l'environnement vba de form facture
    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
    Private Sub Form_BeforeUpdate(Cancel As Integer)
    Dim oRst As DAO.Recordset
    If Me.NewRecord Then
        Set oRst = CurrentDb.OpenRecordset("SELECT Max(indice) FROM tblFacture WHERE Format(datefact,""yyyy"")=" & Chr(34) & Format(Me.datefact, "yyyy") & Chr(34))
            With oRst
                If Not .EOF Then
                Me![indice].Value = Nz(.Fields(0).Value, 0) + 1
                Else
                Me![indice].Value = 1
                End If
                .Close
            End With
    End If
    If IsNull(Me.indice.Value) Then
        Me.indice.Value = Format(Nz(DMax("[indice]", "[tblFacture]", "Year([datefact])='" & Year([datefact]) & "'"), 0) + 1)
    End If
        Me.numfact.Value = "FAC-" & Year([datefact]) & "-" & Format([datefact], "mm") & "-" & Format([indice], "000")
    End Sub

###raw>template_hook.ano_emploi###