Menu

N° de facture automatique après une partie fixe [Résolu]

valduf59000 18 Messages postés vendredi 26 janvier 2018Date d'inscription 14 février 2018 Dernière intervention - 30 janv. 2018 à 09:13 - Dernière réponse : valduf59000 18 Messages postés vendredi 26 janvier 2018Date d'inscription 14 février 2018 Dernière intervention
- 14 févr. 2018 à 10:18
Bonjour,

Je travaille actuellement sur une base de données Access pour mettre en chez un client.

J'aimerais savoir si c'est possible de mettre une numérotation automatique qui se met en place après une partie fixe

Ex :
2018/01/201
2018/01/202
2018/01/203

Dans l'attente de votre réponse,

Cordialement

Valentin



Afficher la suite 

11 réponses

Répondre au sujet
yg_be 4674 Messages postés lundi 9 juin 2008Date d'inscriptionContributeurStatut 21 février 2018 Dernière intervention - 30 janv. 2018 à 20:09
0
Utile
7
bonsoir, cela me semble très possible, à condition d'être prêt à un peu programmer pour générer le contenu du champ au moment de la création de l'enregistrement.
valduf59000 18 Messages postés vendredi 26 janvier 2018Date d'inscription 14 février 2018 Dernière intervention - 31 janv. 2018 à 09:25
comment ça ? dans ma table ? je n'ai pas encore d'enregistrements
J'ai préparé mes tables et je souhaite que le format soit :
Interv2018/01/.....
yg_be 4674 Messages postés lundi 9 juin 2008Date d'inscriptionContributeurStatut 21 février 2018 Dernière intervention - 31 janv. 2018 à 11:58
comment les enregistrements seront-ils créés? par formulaire, par programme, ?
valduf59000 18 Messages postés vendredi 26 janvier 2018Date d'inscription 14 février 2018 Dernière intervention - 31 janv. 2018 à 13:30
par formulaire j'ai trouvé une page d'explication mais j'ai fais toute manip et je ne sui pas sur que ça fonctionne
via un VBA
valduf59000 18 Messages postés vendredi 26 janvier 2018Date d'inscription 14 février 2018 Dernière intervention - 31 janv. 2018 à 13:53
voila le codage vba pour le formulaire
' ---
' NUMEROTATION AUTOMATIQUE PERSONNALISEE
' ---
' Entrée : strTable <- Nom de la table.
' strField <- Nom du champ contenant le numéro
' strFormat <- Gabarit décrivant comment formater
' le numéro.
' intDigits <- Nombre de caractères pour le
' numéro proprement dit.
' dtDate <- Date de référence pour le calcul
' de l'année, du mois...
'
Function AutoNumber( _
ByVal strTable As String, _
ByVal strField As String, _
Optional ByVal strFormat As String = "", _
Optional ByVal intDigits As Integer = 4, _
Optional ByVal dtDate As Date = #1/1/100#)

' Quelques variables...
On Error GoTo AutoNumberErr
Dim varMarkers As Variant, varMark As Variant
Dim strCriteria As String
Dim strNum As String, lngNum As Long, strPart As String

' Quelques retraitements...
If dtDate = #1/1/100# Then dtDate = Now()
strField = "[" & strField & "]"
strFormat = Replace(strFormat, "'", "''")

' Marqueurs à remplacer
varMarkers = Array("YYYY", "YY", "Q", "MM", "WW", "DD")
For Each varMark In varMarkers
' Formater la date et l'injecter dans le template
strPart = Format(dtDate, varMark, vbMonday, vbFirstFourDays)
strFormat = Replace(strFormat, "[" & varMark & "]", _
Format(strPart, String(Len(varMark), "0")))
Next

' On cherche la valeur maximale déjà employée dans la table
strCriteria = strField & " LIKE '" & strFormat & "*'"
strNum = Nz(DMax(strField, strTable, strCriteria), "")

' On crée le nouveau numéro
lngNum = IIf(strNum = "", 1, Val(Mid(strNum, Len(strFormat) + 1)) + 1)
strFormat = strFormat & Format(lngNum, String(intDigits, "0"))

' Valeur finale
AutoNumber = strFormat
Exit Function

AutoNumberErr:
MsgBox "Erreur : " & Err.Description, vbCritical
AutoNumber = ""
Exit Function
End Function

Question secondaire : Des que le N° sera incrementez on est d'accord sur le fait que sa alimentera la table, et que des que je vais créer une nouvelle facture il va me mettre le numéro suivant ?
yg_be 4674 Messages postés lundi 9 juin 2008Date d'inscriptionContributeurStatut 21 février 2018 Dernière intervention > valduf59000 18 Messages postés vendredi 26 janvier 2018Date d'inscription 14 février 2018 Dernière intervention - 31 janv. 2018 à 15:57
tu avances dans la bonne direction. je n'ai pas tout examiné, mais le but est, en effet, d'assigner le numéro suivant.
Commenter la réponse de yg_be
castours 2784 Messages postés lundi 18 septembre 2006Date d'inscription 7 février 2018 Dernière intervention - 31 janv. 2018 à 21:21
0
Utile
bonjour
je l'ai fait dans formulaire en reunissant le n) auto puis la saison des cours.
peux tu mettre ta base compressée dans un lien de cjoint pour mieux voire ton probleme
merci
Commenter la réponse de castours
0
Utile
1
bonjour
marque resolu c'est fait
valduf59000 18 Messages postés vendredi 26 janvier 2018Date d'inscription 14 février 2018 Dernière intervention - 14 févr. 2018 à 10:18
Désolé je pensais l'avoir mis en résolu
Commenter la réponse de castours