Numérotation continue de plusieurs types documents...
19 réponses
Sogolon
Bonjour, salut à tous et à toutes.
Merci de votre aide qui me permet d'avancer dans mon Application.
Une nouvelle question:
Mon appli doit gérer plusieurs types de documents(L, BC,F,FC et EM) et ceci
dans deux sens: Arrivé et Départ.
J'aimerai que dans une Table T_Correspondances le champ Réf soit numéroté
automatiquement comme suit:
1-Document Arrivé:
L 1/05-06/ puis L 2/05-06/ ainsi de suite (05-06 c'est le mois et
l'année en cours). Pour les lettres en courrier arrivé
BC 1/05-06/ puis BC 2/05-06/ ainsi de suite pour les bons de commandes
Idem pour les autres types de documents.
2-Document Départ:
L 1/05-06/ puis L 2/05-06/ ainsi de suite (05-06 c'est le mois et
l'année en cours). Pour les lettres en courrier arrivé
BC 1/05-06/ puis BC 2/05-06/ ainsi de suite pour les bons de commandes
Idem pour les autres types de documents.
Salut à tous et à toutes.
Passez une très bonne journée.
A+...
sCond = "(" & sCond1 & ") AND (" & sCond2 & ") AND (" & sCond3 & ")"
vOldN = DMax("[Numero]", "TCorrespondances", sCond )
If IsNull(vOldN) Then NouveauNumCourrier = 1 Else NouveauNumCourrier = vOldN + 1 End If
End Function
2.
Reste que le choix de l'événement BeforeInsert n'est pas judicieux pour déterminer le nouveau numéro pour 2 raisons :
- On ne connait pas à ce moment là le type du courrier, ni son sens - Si tu es en mode multi-utilisateurs et que 2 personnes font un nouvel enregistrement en même temps, ils auront le même numéro qui apparaîtra mais le premier à VALIDER l'enregistrement stockera le numéro et le second créera un doublon lorsqu'il validera.
Le meilleur moment serait sur Form_AfterUpdate.
Je ne connais pas comment et quand sont saisis le Type, Sens, Date du courrier... Mais on peut imaginer que lors de la mise à jour de l'enregistrement, ces informations sont présentes.
Private Sub Form_AfterUpdate(Cancel As Integer)
If IsNull(Me!Numero) Then Me!Numero = NouveauNumCourrier (Me.TypeCourrier, Me.Sens, Me.DateCourrier) End If
End Sub
Bonjour à toutes et à tous. Salut "LiR". Oui, j'ai mis vos conseils en application, je me documente et lis beaucoup. Sur la base templete de MS, je prends des formulaires , je vois les codes et j'essaie de comprendre leurs objectifs. A ce propos je me suis exercée avec DMAX comme suis: ---------------------------------------------- Private Sub Form_BeforeInsert(Cancel As Integer) Me!Numero = DMax("[Numero]", "TCorrespondances") + 1 If IsNull(Me!Numero) Or Me!Numero< Year(Now) * 10000 Then Me!Numero= 1 + Year(Now) * 10000 End If End Sub ------------------------------------------------ Avec cette procédure je génére une suite de: 20060001;20060002;2006000... Mais là il y'a pas plusieurs cas de figures à gérer, pas beaucoup de If ni Case... A propos je voulais modifier le code ci-dessus pour avoir" 2006-000n" et conserver le fait que le Chrono reparte à 1 l'année suivante.
Merci "LiR" et merci à toute la communauté.
A+...
@@@
OK, donc Sens et TypeCourrier sont des champs numériques. Je crois que nous avons maintenant toutes les informations nécesssaires.
De ton côté, tu as trouvé comment utiliser la fonction DMax?
1.
DMax("[Numero]", "TCorrespondances") +1 :
C'est un bon début.
A noter que si DMax renvoie Null,
DMax("[Numero]", "TCorrespondances") +1 vaut Null, ce n'est pas le but
recherché...
Il manque en outre le 3ème paramètre de la fonction, qui stipule que tu veux
le N° MAX pour les enregistrement vérifiant les conditions :
Year(Courrier_Date) = Year(Now)
TypeCourrier = Me.TypeCourrier
Sens = Me.Sens
Ainsi, tu auras les éventuels courriers de même sens, de même type et de
même année, pour lesquels tu recherches le dernier N° (le plus élevé).
Le mieux est de créer ta propre fonction NouveauNumCourrier :
Public Function NouveauNumCourrier(ByVal NewTypeCourrier as Long, ByVal
NewSensCourrier as Long, ByVal NewDateCourrier as Date) As Long
Dim vOldN As Variant
Dim sCond1 As String
Dim sCond2 As String
Dim sCond3 As String
Dim sCond As String
sCond = "(" & sCond1 & ") AND (" & sCond2 & ") AND (" & sCond3 & ")"
vOldN = DMax("[Numero]", "TCorrespondances", sCond )
If IsNull(vOldN) Then
NouveauNumCourrier = 1
Else
NouveauNumCourrier = vOldN + 1
End If
End Function
2.
Reste que le choix de l'événement BeforeInsert n'est pas judicieux pour
déterminer le nouveau numéro pour 2 raisons :
- On ne connait pas à ce moment là le type du courrier, ni son sens
- Si tu es en mode multi-utilisateurs et que 2 personnes font un nouvel
enregistrement en même temps, ils auront le même numéro qui apparaîtra mais
le premier à VALIDER l'enregistrement stockera le numéro et le second créera
un doublon lorsqu'il validera.
Le meilleur moment serait sur Form_AfterUpdate.
Je ne connais pas comment et quand sont saisis le Type, Sens, Date du
courrier...
Mais on peut imaginer que lors de la mise à jour de l'enregistrement, ces
informations sont présentes.
Private Sub Form_AfterUpdate(Cancel As Integer)
If IsNull(Me!Numero) Then
Me!Numero = NouveauNumCourrier (Me.TypeCourrier, Me.Sens,
Me.DateCourrier)
End If
End Sub
Bonjour à toutes et à tous.
Salut "LiR".
Oui, j'ai mis vos conseils en application, je me documente et lis beaucoup.
Sur la base templete de MS, je prends des formulaires , je vois les codes et
j'essaie de comprendre leurs objectifs.
A ce propos je me suis exercée avec DMAX comme suis:
----------------------------------------------
Private Sub Form_BeforeInsert(Cancel As Integer)
Me!Numero = DMax("[Numero]", "TCorrespondances") + 1
If IsNull(Me!Numero) Or Me!Numero< Year(Now) * 10000 Then
Me!Numero= 1 + Year(Now) * 10000
End If
End Sub
------------------------------------------------
Avec cette procédure je génére une suite de: 20060001;20060002;2006000...
Mais là il y'a pas plusieurs cas de figures à gérer, pas beaucoup de If ni
Case...
A propos je voulais modifier le code ci-dessus pour avoir" 2006-000n" et
conserver le fait que le Chrono reparte à 1 l'année suivante.
Merci "LiR" et merci à toute la communauté.
A+...
@@@
OK, donc Sens et TypeCourrier sont des champs numériques.
Je crois que nous avons maintenant toutes les informations nécesssaires.
De ton côté, tu as trouvé comment utiliser la fonction DMax?
sCond = "(" & sCond1 & ") AND (" & sCond2 & ") AND (" & sCond3 & ")"
vOldN = DMax("[Numero]", "TCorrespondances", sCond )
If IsNull(vOldN) Then NouveauNumCourrier = 1 Else NouveauNumCourrier = vOldN + 1 End If
End Function
2.
Reste que le choix de l'événement BeforeInsert n'est pas judicieux pour déterminer le nouveau numéro pour 2 raisons :
- On ne connait pas à ce moment là le type du courrier, ni son sens - Si tu es en mode multi-utilisateurs et que 2 personnes font un nouvel enregistrement en même temps, ils auront le même numéro qui apparaîtra mais le premier à VALIDER l'enregistrement stockera le numéro et le second créera un doublon lorsqu'il validera.
Le meilleur moment serait sur Form_AfterUpdate.
Je ne connais pas comment et quand sont saisis le Type, Sens, Date du courrier... Mais on peut imaginer que lors de la mise à jour de l'enregistrement, ces informations sont présentes.
Private Sub Form_AfterUpdate(Cancel As Integer)
If IsNull(Me!Numero) Then Me!Numero = NouveauNumCourrier (Me.TypeCourrier, Me.Sens, Me.DateCourrier) End If
End Sub
Bonjour à toutes et à tous. Salut "LiR". Oui, j'ai mis vos conseils en application, je me documente et lis beaucoup. Sur la base templete de MS, je prends des formulaires , je vois les codes et j'essaie de comprendre leurs objectifs. A ce propos je me suis exercée avec DMAX comme suis: ---------------------------------------------- Private Sub Form_BeforeInsert(Cancel As Integer) Me!Numero = DMax("[Numero]", "TCorrespondances") + 1 If IsNull(Me!Numero) Or Me!Numero< Year(Now) * 10000 Then Me!Numero= 1 + Year(Now) * 10000 End If End Sub ------------------------------------------------ Avec cette procédure je génére une suite de: 20060001;20060002;2006000... Mais là il y'a pas plusieurs cas de figures à gérer, pas beaucoup de If ni Case... A propos je voulais modifier le code ci-dessus pour avoir" 2006-000n" et conserver le fait que le Chrono reparte à 1 l'année suivante.
Merci "LiR" et merci à toute la communauté.
A+...
@@@
OK, donc Sens et TypeCourrier sont des champs numériques. Je crois que nous avons maintenant toutes les informations nécesssaires.
De ton côté, tu as trouvé comment utiliser la fonction DMax?
Sogolon
Salut et merci "LiR", je me mes au travail sans tarder. Je vous reviens bientôt. Merci.
(<Cependant comment avoir le format: "TypeCourrier Num/mm-yy " par exemple: L 0001/05-06/ pour les lettres>) Quoi qu'il en sera je vous remercierai jamais assez. Vraiment bon boulot et surtout bonne continuation, ayez une très bonne santé Salut à toutes et à tous.
A+...
Salut et merci "LiR", je me mes au travail sans tarder.
Je vous reviens bientôt.
Merci.
(<Cependant comment avoir le format: "TypeCourrier Num/mm-yy " par exemple:
L 0001/05-06/ pour les lettres>)
Quoi qu'il en sera je vous remercierai jamais assez. Vraiment bon boulot et
surtout bonne continuation, ayez une très bonne santé
Salut à toutes et à tous.
Salut et merci "LiR", je me mes au travail sans tarder. Je vous reviens bientôt. Merci.
(<Cependant comment avoir le format: "TypeCourrier Num/mm-yy " par exemple: L 0001/05-06/ pour les lettres>) Quoi qu'il en sera je vous remercierai jamais assez. Vraiment bon boulot et surtout bonne continuation, ayez une très bonne santé Salut à toutes et à tous.
A+...
LiR
OK,
Au fait, pour le moment on n'en est qu'à la détermination du N° de chrono. Pour le N° Réf (et notamment le format), on verra par la suite...
Salut et merci "LiR", je me mes au travail sans tarder. Je vous reviens bientôt. Merci.
(<Cependant comment avoir le format: "TypeCourrier Num/mm-yy " par exemple: L 0001/05-06/ pour les lettres>) Quoi qu'il en sera je vous remercierai jamais assez. Vraiment bon boulot et surtout bonne continuation, ayez une très bonne santé Salut à toutes et à tous.
A+...
OK,
Au fait, pour le moment on n'en est qu'à la détermination du N° de chrono.
Pour le N° Réf (et notamment le format), on verra par la suite...
Salut et merci "LiR", je me mes au travail sans tarder.
Je vous reviens bientôt.
Merci.
(<Cependant comment avoir le format: "TypeCourrier Num/mm-yy " par exemple:
L 0001/05-06/ pour les lettres>)
Quoi qu'il en sera je vous remercierai jamais assez. Vraiment bon boulot et
surtout bonne continuation, ayez une très bonne santé
Salut à toutes et à tous.
Au fait, pour le moment on n'en est qu'à la détermination du N° de chrono. Pour le N° Réf (et notamment le format), on verra par la suite...
Salut et merci "LiR", je me mes au travail sans tarder. Je vous reviens bientôt. Merci.
(<Cependant comment avoir le format: "TypeCourrier Num/mm-yy " par exemple: L 0001/05-06/ pour les lettres>) Quoi qu'il en sera je vous remercierai jamais assez. Vraiment bon boulot et surtout bonne continuation, ayez une très bonne santé Salut à toutes et à tous.
A+...
Sogolon
Ok, d'accord à tout de suite si vous le voulez bien. Merci A+... @@@
OK,
Au fait, pour le moment on n'en est qu'à la détermination du N° de chrono. Pour le N° Réf (et notamment le format), on verra par la suite...
Salut et merci "LiR", je me mes au travail sans tarder. Je vous reviens bientôt. Merci.
(<Cependant comment avoir le format: "TypeCourrier Num/mm-yy " par exemple: L 0001/05-06/ pour les lettres>) Quoi qu'il en sera je vous remercierai jamais assez. Vraiment bon boulot et surtout bonne continuation, ayez une très bonne santé Salut à toutes et à tous.
A+...
Ok, d'accord à tout de suite si vous le voulez bien. Merci
A+...
@@@
OK,
Au fait, pour le moment on n'en est qu'à la détermination du N° de chrono.
Pour le N° Réf (et notamment le format), on verra par la suite...
Salut et merci "LiR", je me mes au travail sans tarder.
Je vous reviens bientôt.
Merci.
(<Cependant comment avoir le format: "TypeCourrier Num/mm-yy " par exemple:
L 0001/05-06/ pour les lettres>)
Quoi qu'il en sera je vous remercierai jamais assez. Vraiment bon boulot et
surtout bonne continuation, ayez une très bonne santé
Salut à toutes et à tous.
Ok, d'accord à tout de suite si vous le voulez bien. Merci A+... @@@
OK,
Au fait, pour le moment on n'en est qu'à la détermination du N° de chrono. Pour le N° Réf (et notamment le format), on verra par la suite...
Salut et merci "LiR", je me mes au travail sans tarder. Je vous reviens bientôt. Merci.
(<Cependant comment avoir le format: "TypeCourrier Num/mm-yy " par exemple: L 0001/05-06/ pour les lettres>) Quoi qu'il en sera je vous remercierai jamais assez. Vraiment bon boulot et surtout bonne continuation, ayez une très bonne santé Salut à toutes et à tous.
A+...
Sogolon
Bonjour à nouveau. J'ai implémenté le code, mais j'ai une erreur "erreur d'exécution '12': Incompatibilité de type" Et dans la sous-procédure --------------- Private Sub Form_AfterUpdate() If IsNull(Me!Numero) Then Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier) End If End Sub ------------------ J'ai toute la ligne' Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier) qui est sélectionnée ( en jaune)
"Remarque dans la fonction que nous avons mis en place je ne vois pas comment vous avez fait intervenir le Numero."
A tout de suite si vous le voulez bien. Merci A+... @@@
Bonjour à nouveau.
J'ai implémenté le code, mais j'ai une erreur
"erreur d'exécution '12':
Incompatibilité de type"
Et dans la sous-procédure
---------------
Private Sub Form_AfterUpdate()
If IsNull(Me!Numero) Then
Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier)
End If
End Sub
------------------
J'ai toute la ligne'
Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier)
qui est sélectionnée ( en jaune)
"Remarque dans la fonction que nous avons mis en place je ne vois pas
comment vous avez fait intervenir le Numero."
A tout de suite si vous le voulez bien. Merci
A+...
@@@
Bonjour à nouveau. J'ai implémenté le code, mais j'ai une erreur "erreur d'exécution '12': Incompatibilité de type" Et dans la sous-procédure --------------- Private Sub Form_AfterUpdate() If IsNull(Me!Numero) Then Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier) End If End Sub ------------------ J'ai toute la ligne' Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier) qui est sélectionnée ( en jaune)
"Remarque dans la fonction que nous avons mis en place je ne vois pas comment vous avez fait intervenir le Numero."
A tout de suite si vous le voulez bien. Merci A+... @@@
Sogolon
Excusez-moi, c'est moi qui avait commis une erreur. Après correction l'erreur porte sur la fonction. Toute la ligne: vOldN = DMax("[Numero]", "Correspondances", sCond) Est soulignée. Avec l'aide de VB: vOldN=Vide et sCond="(TypeCourrier=1) AND (Sens=1) AND (Year(DateCourrier) 06)" ce qui est tout à fait correct car: TypeCourrier=1 correspond à Lettre Sens=1 correspond à Départ et Year(DateCourrier)= correspond bien à l'année en cours.
Merci "LiR" de votre aide, je compte sur vous et à toute la communauté. Merci A tout de suite si vous le voulez bien. Merci
A+... @@@
Bonjour à nouveau. J'ai implémenté le code, mais j'ai une erreur "erreur d'exécution '12': Incompatibilité de type" Et dans la sous-procédure --------------- Private Sub Form_AfterUpdate() If IsNull(Me!Numero) Then Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier) End If End Sub ------------------ J'ai toute la ligne' Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier) qui est sélectionnée ( en jaune)
"Remarque dans la fonction que nous avons mis en place je ne vois pas comment vous avez fait intervenir le Numero."
A tout de suite si vous le voulez bien. Merci A+... @@@
Excusez-moi, c'est moi qui avait commis une erreur.
Après correction l'erreur porte sur la fonction.
Toute la ligne:
vOldN = DMax("[Numero]", "Correspondances", sCond)
Est soulignée.
Avec l'aide de VB:
vOldN=Vide
et sCond="(TypeCourrier=1) AND (Sens=1) AND (Year(DateCourrier) 06)" ce
qui est tout à fait correct car:
TypeCourrier=1 correspond à Lettre
Sens=1 correspond à Départ
et Year(DateCourrier)= correspond bien à l'année en cours.
Merci "LiR" de votre aide, je compte sur vous et à toute la communauté.
Merci
A tout de suite si vous le voulez bien. Merci
A+...
@@@
Bonjour à nouveau.
J'ai implémenté le code, mais j'ai une erreur
"erreur d'exécution '12':
Incompatibilité de type"
Et dans la sous-procédure
---------------
Private Sub Form_AfterUpdate()
If IsNull(Me!Numero) Then
Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier)
End If
End Sub
------------------
J'ai toute la ligne'
Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier)
qui est sélectionnée ( en jaune)
"Remarque dans la fonction que nous avons mis en place je ne vois pas
comment vous avez fait intervenir le Numero."
A tout de suite si vous le voulez bien. Merci
A+...
@@@
Excusez-moi, c'est moi qui avait commis une erreur. Après correction l'erreur porte sur la fonction. Toute la ligne: vOldN = DMax("[Numero]", "Correspondances", sCond) Est soulignée. Avec l'aide de VB: vOldN=Vide et sCond="(TypeCourrier=1) AND (Sens=1) AND (Year(DateCourrier) 06)" ce qui est tout à fait correct car: TypeCourrier=1 correspond à Lettre Sens=1 correspond à Départ et Year(DateCourrier)= correspond bien à l'année en cours.
Merci "LiR" de votre aide, je compte sur vous et à toute la communauté. Merci A tout de suite si vous le voulez bien. Merci
A+... @@@
Bonjour à nouveau. J'ai implémenté le code, mais j'ai une erreur "erreur d'exécution '12': Incompatibilité de type" Et dans la sous-procédure --------------- Private Sub Form_AfterUpdate() If IsNull(Me!Numero) Then Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier) End If End Sub ------------------ J'ai toute la ligne' Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier) qui est sélectionnée ( en jaune)
"Remarque dans la fonction que nous avons mis en place je ne vois pas comment vous avez fait intervenir le Numero."
A tout de suite si vous le voulez bien. Merci A+... @@@
LiR
Quel est le message d'erreur?
Excusez-moi, c'est moi qui avait commis une erreur. Après correction l'erreur porte sur la fonction. Toute la ligne: vOldN = DMax("[Numero]", "Correspondances", sCond) Est soulignée. Avec l'aide de VB: vOldN=Vide et sCond="(TypeCourrier=1) AND (Sens=1) AND (Year(DateCourrier) 06)" ce qui est tout à fait correct car: TypeCourrier=1 correspond à Lettre Sens=1 correspond à Départ et Year(DateCourrier)= correspond bien à l'année en cours.
Merci "LiR" de votre aide, je compte sur vous et à toute la communauté. Merci A tout de suite si vous le voulez bien. Merci
A+... @@@
Bonjour à nouveau. J'ai implémenté le code, mais j'ai une erreur "erreur d'exécution '12': Incompatibilité de type" Et dans la sous-procédure --------------- Private Sub Form_AfterUpdate() If IsNull(Me!Numero) Then Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier) End If End Sub ------------------ J'ai toute la ligne' Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier) qui est sélectionnée ( en jaune)
"Remarque dans la fonction que nous avons mis en place je ne vois pas comment vous avez fait intervenir le Numero."
A tout de suite si vous le voulez bien. Merci A+... @@@
Quel est le message d'erreur?
Excusez-moi, c'est moi qui avait commis une erreur.
Après correction l'erreur porte sur la fonction.
Toute la ligne:
vOldN = DMax("[Numero]", "Correspondances", sCond)
Est soulignée.
Avec l'aide de VB:
vOldN=Vide
et sCond="(TypeCourrier=1) AND (Sens=1) AND (Year(DateCourrier) 06)" ce
qui est tout à fait correct car:
TypeCourrier=1 correspond à Lettre
Sens=1 correspond à Départ
et Year(DateCourrier)= correspond bien à l'année en cours.
Merci "LiR" de votre aide, je compte sur vous et à toute la communauté.
Merci
A tout de suite si vous le voulez bien. Merci
A+...
@@@
Bonjour à nouveau.
J'ai implémenté le code, mais j'ai une erreur
"erreur d'exécution '12':
Incompatibilité de type"
Et dans la sous-procédure
---------------
Private Sub Form_AfterUpdate()
If IsNull(Me!Numero) Then
Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier)
End If
End Sub
------------------
J'ai toute la ligne'
Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier)
qui est sélectionnée ( en jaune)
"Remarque dans la fonction que nous avons mis en place je ne vois pas
comment vous avez fait intervenir le Numero."
A tout de suite si vous le voulez bien. Merci
A+...
@@@
Excusez-moi, c'est moi qui avait commis une erreur. Après correction l'erreur porte sur la fonction. Toute la ligne: vOldN = DMax("[Numero]", "Correspondances", sCond) Est soulignée. Avec l'aide de VB: vOldN=Vide et sCond="(TypeCourrier=1) AND (Sens=1) AND (Year(DateCourrier) 06)" ce qui est tout à fait correct car: TypeCourrier=1 correspond à Lettre Sens=1 correspond à Départ et Year(DateCourrier)= correspond bien à l'année en cours.
Merci "LiR" de votre aide, je compte sur vous et à toute la communauté. Merci A tout de suite si vous le voulez bien. Merci
A+... @@@
Bonjour à nouveau. J'ai implémenté le code, mais j'ai une erreur "erreur d'exécution '12': Incompatibilité de type" Et dans la sous-procédure --------------- Private Sub Form_AfterUpdate() If IsNull(Me!Numero) Then Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier) End If End Sub ------------------ J'ai toute la ligne' Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier) qui est sélectionnée ( en jaune)
"Remarque dans la fonction que nous avons mis en place je ne vois pas comment vous avez fait intervenir le Numero."
A tout de suite si vous le voulez bien. Merci A+... @@@
Sogolon
L'erreur c'est: ----------------------------- 'Erreur d'exécution '3464' Type de données incompatible dans l'expression du critère.' ----------------------------- A+... @@@
Quel est le message d'erreur?
Excusez-moi, c'est moi qui avait commis une erreur. Après correction l'erreur porte sur la fonction. Toute la ligne: vOldN = DMax("[Numero]", "Correspondances", sCond) Est soulignée. Avec l'aide de VB: vOldN=Vide et sCond="(TypeCourrier=1) AND (Sens=1) AND (Year(DateCourrier) 06)" ce qui est tout à fait correct car: TypeCourrier=1 correspond à Lettre Sens=1 correspond à Départ et Year(DateCourrier)= correspond bien à l'année en cours.
Merci "LiR" de votre aide, je compte sur vous et à toute la communauté. Merci A tout de suite si vous le voulez bien. Merci
A+... @@@
Bonjour à nouveau. J'ai implémenté le code, mais j'ai une erreur "erreur d'exécution '12': Incompatibilité de type" Et dans la sous-procédure --------------- Private Sub Form_AfterUpdate() If IsNull(Me!Numero) Then Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier) End If End Sub ------------------ J'ai toute la ligne' Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier) qui est sélectionnée ( en jaune)
"Remarque dans la fonction que nous avons mis en place je ne vois pas comment vous avez fait intervenir le Numero."
A tout de suite si vous le voulez bien. Merci A+... @@@
L'erreur c'est:
-----------------------------
'Erreur d'exécution '3464'
Type de données incompatible dans l'expression du critère.'
-----------------------------
A+...
@@@
Quel est le message d'erreur?
Excusez-moi, c'est moi qui avait commis une erreur.
Après correction l'erreur porte sur la fonction.
Toute la ligne:
vOldN = DMax("[Numero]", "Correspondances", sCond)
Est soulignée.
Avec l'aide de VB:
vOldN=Vide
et sCond="(TypeCourrier=1) AND (Sens=1) AND (Year(DateCourrier) 06)" ce
qui est tout à fait correct car:
TypeCourrier=1 correspond à Lettre
Sens=1 correspond à Départ
et Year(DateCourrier)= correspond bien à l'année en cours.
Merci "LiR" de votre aide, je compte sur vous et à toute la communauté.
Merci
A tout de suite si vous le voulez bien. Merci
A+...
@@@
Bonjour à nouveau.
J'ai implémenté le code, mais j'ai une erreur
"erreur d'exécution '12':
Incompatibilité de type"
Et dans la sous-procédure
---------------
Private Sub Form_AfterUpdate()
If IsNull(Me!Numero) Then
Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier)
End If
End Sub
------------------
J'ai toute la ligne'
Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier)
qui est sélectionnée ( en jaune)
"Remarque dans la fonction que nous avons mis en place je ne vois pas
comment vous avez fait intervenir le Numero."
A tout de suite si vous le voulez bien. Merci
A+...
@@@
L'erreur c'est: ----------------------------- 'Erreur d'exécution '3464' Type de données incompatible dans l'expression du critère.' ----------------------------- A+... @@@
Quel est le message d'erreur?
Excusez-moi, c'est moi qui avait commis une erreur. Après correction l'erreur porte sur la fonction. Toute la ligne: vOldN = DMax("[Numero]", "Correspondances", sCond) Est soulignée. Avec l'aide de VB: vOldN=Vide et sCond="(TypeCourrier=1) AND (Sens=1) AND (Year(DateCourrier) 06)" ce qui est tout à fait correct car: TypeCourrier=1 correspond à Lettre Sens=1 correspond à Départ et Year(DateCourrier)= correspond bien à l'année en cours.
Merci "LiR" de votre aide, je compte sur vous et à toute la communauté. Merci A tout de suite si vous le voulez bien. Merci
A+... @@@
Bonjour à nouveau. J'ai implémenté le code, mais j'ai une erreur "erreur d'exécution '12': Incompatibilité de type" Et dans la sous-procédure --------------- Private Sub Form_AfterUpdate() If IsNull(Me!Numero) Then Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier) End If End Sub ------------------ J'ai toute la ligne' Me!Numero = NouveauNumCourrier(Me.TypeCourrier, Me.Sens, Me.DateCourrier) qui est sélectionnée ( en jaune)
"Remarque dans la fonction que nous avons mis en place je ne vois pas comment vous avez fait intervenir le Numero."
A tout de suite si vous le voulez bien. Merci A+... @@@
Sogolon
Bonne nouvelle,ça marche. Bravo "LiR". je vous exprime toute ma gratitude. Le problème venait, je pense, du champ Numero. Le type de données était "Numérique" et je l'ai changé pour mettre du "texte" au type de données. Merci beaucoup. Il me reste la mise au format: "TypeCourrier Num/mm-yy " par exemple: L 0001/05-06/ pour les lettres". Dans mon champ Référence. Merci "LiR"
A+... @@@
Bonne nouvelle,ça marche.
Bravo "LiR".
je vous exprime toute ma gratitude.
Le problème venait, je pense, du champ Numero.
Le type de données était "Numérique" et je l'ai changé pour mettre du
"texte" au type de données.
Merci beaucoup.
Il me reste la mise au format:
"TypeCourrier Num/mm-yy " par exemple:
L 0001/05-06/ pour les lettres".
Dans mon champ Référence.
Merci "LiR"
Bonne nouvelle,ça marche. Bravo "LiR". je vous exprime toute ma gratitude. Le problème venait, je pense, du champ Numero. Le type de données était "Numérique" et je l'ai changé pour mettre du "texte" au type de données. Merci beaucoup. Il me reste la mise au format: "TypeCourrier Num/mm-yy " par exemple: L 0001/05-06/ pour les lettres". Dans mon champ Référence. Merci "LiR"