bonjour=20
j'aurai voulu que le numero dans ma table soit form=E9
comme =E7a : aamm et numero qui s'incr=E9mente
genre : 2004 =3D 04
mois: mars =3D 03
ce qui donnerait 0403001, et ensuite 0403002,...
comment faire ?
je sais qu'il y en a qui savent !
alors merci
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Anor
Bonjour,
nanou wrote: | bonjour | j'aurai voulu que le numero dans ma table soit formé | comme ça : aamm et numero qui s'incrémente | genre : 2004 = 04 | mois: mars = 03 | ce qui donnerait 0403001, et ensuite 0403002,... | comment faire ? | je sais qu'il y en a qui savent ! | alors merci
une fonction à adapter à ton besoin (rajouter la partie mois) :
Function NouveauNumero(ChampAIncrementer As String, _ TableSource As String) As String NouveauNumero = Year(Date) * 10000 + _ Right(Nz(DLookup(ChampAIncrementer, TableSource, _ "left([" & ChampAIncrementer & "],4) = " & Year(Date))) + 1, 4) End Function
et à coller dans un nouveau module.
Ensuite, il suffit de mettre : - dans le cas d'une utilisation monoposte, l'appel de la fonction = NouveauNumero("LeChamp";"LaTable") dans la propriété valeur par défaut du controle lié au champ à incrémenter *dans le formulaire de saisie*
- dans le cas d'une utilisation mono ou multi-postes, dans l'événement sur avant mise à jour du formulaire :
Private Sub Form_BeforeUpdate(Cancel As Integer) Me!LeControle.value = NouveauNumero("LeChamp","LaTable") End Sub
mettre le bon nom du champ et de la table qui contient la numérotation.
-- à+ Arnaud -------------------------------------------------- Conseils d'utilisation : http://users.skynet.be/mpfa/ Access Memorandum : http://memoaccess.free.fr /Réponses souhaitées sur ce forum, merci/ --------------------------------------------------
Bonjour,
nanou wrote:
| bonjour
| j'aurai voulu que le numero dans ma table soit formé
| comme ça : aamm et numero qui s'incrémente
| genre : 2004 = 04
| mois: mars = 03
| ce qui donnerait 0403001, et ensuite 0403002,...
| comment faire ?
| je sais qu'il y en a qui savent !
| alors merci
une fonction à adapter à ton besoin (rajouter la partie mois) :
Function NouveauNumero(ChampAIncrementer As String, _
TableSource As String) As String
NouveauNumero = Year(Date) * 10000 + _
Right(Nz(DLookup(ChampAIncrementer, TableSource, _
"left([" & ChampAIncrementer & "],4) = " & Year(Date))) + 1, 4)
End Function
et à coller dans un nouveau module.
Ensuite, il suffit de mettre :
- dans le cas d'une utilisation monoposte, l'appel de la fonction
= NouveauNumero("LeChamp";"LaTable")
dans la propriété valeur par défaut du controle lié au champ à incrémenter *dans le formulaire
de saisie*
- dans le cas d'une utilisation mono ou multi-postes,
dans l'événement sur avant mise à jour du formulaire :
Private Sub Form_BeforeUpdate(Cancel As Integer)
Me!LeControle.value = NouveauNumero("LeChamp","LaTable")
End Sub
mettre le bon nom du champ et de la table qui contient la numérotation.
--
à+
Arnaud
--------------------------------------------------
Conseils d'utilisation : http://users.skynet.be/mpfa/
Access Memorandum : http://memoaccess.free.fr
/Réponses souhaitées sur ce forum, merci/
--------------------------------------------------
nanou wrote: | bonjour | j'aurai voulu que le numero dans ma table soit formé | comme ça : aamm et numero qui s'incrémente | genre : 2004 = 04 | mois: mars = 03 | ce qui donnerait 0403001, et ensuite 0403002,... | comment faire ? | je sais qu'il y en a qui savent ! | alors merci
une fonction à adapter à ton besoin (rajouter la partie mois) :
Function NouveauNumero(ChampAIncrementer As String, _ TableSource As String) As String NouveauNumero = Year(Date) * 10000 + _ Right(Nz(DLookup(ChampAIncrementer, TableSource, _ "left([" & ChampAIncrementer & "],4) = " & Year(Date))) + 1, 4) End Function
et à coller dans un nouveau module.
Ensuite, il suffit de mettre : - dans le cas d'une utilisation monoposte, l'appel de la fonction = NouveauNumero("LeChamp";"LaTable") dans la propriété valeur par défaut du controle lié au champ à incrémenter *dans le formulaire de saisie*
- dans le cas d'une utilisation mono ou multi-postes, dans l'événement sur avant mise à jour du formulaire :
Private Sub Form_BeforeUpdate(Cancel As Integer) Me!LeControle.value = NouveauNumero("LeChamp","LaTable") End Sub
mettre le bon nom du champ et de la table qui contient la numérotation.
-- à+ Arnaud -------------------------------------------------- Conseils d'utilisation : http://users.skynet.be/mpfa/ Access Memorandum : http://memoaccess.free.fr /Réponses souhaitées sur ce forum, merci/ --------------------------------------------------
Maître Nicolède
On peut utiliser aussi 2 champ qui font office de clé primaire (c'est le but n'est-ce pas ?) un champ Num de type compteur un champ annémois de type texte qu'il faut mettre à jour sur événement before update "Anor" <http://memoaccess.free.fr/anor/email.htm> a écrit dans le message de news: | Bonjour, | | nanou wrote: | | bonjour | | j'aurai voulu que le numero dans ma table soit formé | | comme ça : aamm et numero qui s'incrémente | | genre : 2004 = 04 | | mois: mars = 03 | | ce qui donnerait 0403001, et ensuite 0403002,... | | comment faire ? | | je sais qu'il y en a qui savent ! | | alors merci | | | une fonction à adapter à ton besoin (rajouter la partie mois) : | | Function NouveauNumero(ChampAIncrementer As String, _ | TableSource As String) As String | NouveauNumero = Year(Date) * 10000 + _ | Right(Nz(DLookup(ChampAIncrementer, TableSource, _ | "left([" & ChampAIncrementer & "],4) = " & Year(Date))) + 1, 4) | End Function | | et à coller dans un nouveau module. | | Ensuite, il suffit de mettre : | - dans le cas d'une utilisation monoposte, l'appel de la fonction | = NouveauNumero("LeChamp";"LaTable") | dans la propriété valeur par défaut du controle lié au champ à incrémenter *dans le formulaire | de saisie* | | - dans le cas d'une utilisation mono ou multi-postes, | dans l'événement sur avant mise à jour du formulaire : | | Private Sub Form_BeforeUpdate(Cancel As Integer) | Me!LeControle.value = NouveauNumero("LeChamp","LaTable") | End Sub | | mettre le bon nom du champ et de la table qui contient la numérotation. | | -- | à+ | Arnaud | -------------------------------------------------- | Conseils d'utilisation : http://users.skynet.be/mpfa/ | Access Memorandum : http://memoaccess.free.fr | /Réponses souhaitées sur ce forum, merci/ | -------------------------------------------------- | |
On peut utiliser aussi 2 champ qui font office de clé primaire (c'est le but n'est-ce pas ?)
un champ Num de type compteur
un champ annémois de type texte qu'il faut mettre à jour sur événement before update
"Anor" <http://memoaccess.free.fr/anor/email.htm> a écrit dans le message de news:exoG9ogLEHA.2068@TK2MSFTNGP11.phx.gbl...
| Bonjour,
|
| nanou wrote:
| | bonjour
| | j'aurai voulu que le numero dans ma table soit formé
| | comme ça : aamm et numero qui s'incrémente
| | genre : 2004 = 04
| | mois: mars = 03
| | ce qui donnerait 0403001, et ensuite 0403002,...
| | comment faire ?
| | je sais qu'il y en a qui savent !
| | alors merci
|
|
| une fonction à adapter à ton besoin (rajouter la partie mois) :
|
| Function NouveauNumero(ChampAIncrementer As String, _
| TableSource As String) As String
| NouveauNumero = Year(Date) * 10000 + _
| Right(Nz(DLookup(ChampAIncrementer, TableSource, _
| "left([" & ChampAIncrementer & "],4) = " & Year(Date))) + 1, 4)
| End Function
|
| et à coller dans un nouveau module.
|
| Ensuite, il suffit de mettre :
| - dans le cas d'une utilisation monoposte, l'appel de la fonction
| = NouveauNumero("LeChamp";"LaTable")
| dans la propriété valeur par défaut du controle lié au champ à incrémenter *dans le formulaire
| de saisie*
|
| - dans le cas d'une utilisation mono ou multi-postes,
| dans l'événement sur avant mise à jour du formulaire :
|
| Private Sub Form_BeforeUpdate(Cancel As Integer)
| Me!LeControle.value = NouveauNumero("LeChamp","LaTable")
| End Sub
|
| mettre le bon nom du champ et de la table qui contient la numérotation.
|
| --
| à+
| Arnaud
| --------------------------------------------------
| Conseils d'utilisation : http://users.skynet.be/mpfa/
| Access Memorandum : http://memoaccess.free.fr
| /Réponses souhaitées sur ce forum, merci/
| --------------------------------------------------
|
|
On peut utiliser aussi 2 champ qui font office de clé primaire (c'est le but n'est-ce pas ?) un champ Num de type compteur un champ annémois de type texte qu'il faut mettre à jour sur événement before update "Anor" <http://memoaccess.free.fr/anor/email.htm> a écrit dans le message de news: | Bonjour, | | nanou wrote: | | bonjour | | j'aurai voulu que le numero dans ma table soit formé | | comme ça : aamm et numero qui s'incrémente | | genre : 2004 = 04 | | mois: mars = 03 | | ce qui donnerait 0403001, et ensuite 0403002,... | | comment faire ? | | je sais qu'il y en a qui savent ! | | alors merci | | | une fonction à adapter à ton besoin (rajouter la partie mois) : | | Function NouveauNumero(ChampAIncrementer As String, _ | TableSource As String) As String | NouveauNumero = Year(Date) * 10000 + _ | Right(Nz(DLookup(ChampAIncrementer, TableSource, _ | "left([" & ChampAIncrementer & "],4) = " & Year(Date))) + 1, 4) | End Function | | et à coller dans un nouveau module. | | Ensuite, il suffit de mettre : | - dans le cas d'une utilisation monoposte, l'appel de la fonction | = NouveauNumero("LeChamp";"LaTable") | dans la propriété valeur par défaut du controle lié au champ à incrémenter *dans le formulaire | de saisie* | | - dans le cas d'une utilisation mono ou multi-postes, | dans l'événement sur avant mise à jour du formulaire : | | Private Sub Form_BeforeUpdate(Cancel As Integer) | Me!LeControle.value = NouveauNumero("LeChamp","LaTable") | End Sub | | mettre le bon nom du champ et de la table qui contient la numérotation. | | -- | à+ | Arnaud | -------------------------------------------------- | Conseils d'utilisation : http://users.skynet.be/mpfa/ | Access Memorandum : http://memoaccess.free.fr | /Réponses souhaitées sur ce forum, merci/ | -------------------------------------------------- | |
nanou
merci arnaud cela marcherait bien si si si je n'étais pas si nulle Ton instruction marche super sauf que quand j'ajoute le mois ???!!cela me met le numéro 20048002 pour le 2ème numero. voila ce que j'ai écrit Function NouveauNumero(ChampAIncrementer As String, _ TableSource As String) As String
NouveauNumero = Year(date) * 10000 + Month(date) * 1000 + _ Right(Nz(DLookup(ChampAIncrementer, TableSource, _ "left([" & ChampAIncrementer & "],4) = " & Year(date))) + 1, 4) End Function je commence juste avec vba et je ne comprends pas grand chose encore de plus j'ai un champ date_litige et je voudrais que le champAIncrementer prenne l'année et le mois de ce champ. maintenant tu sais tout merci pour ton aide nanou
-----Message d'origine----- Bonjour,
nanou wrote: | bonjour | j'aurai voulu que le numero dans ma table soit formé | comme ça : aamm et numero qui s'incrémente | genre : 2004 = 04 | mois: mars = 03 | ce qui donnerait 0403001, et ensuite 0403002,... | comment faire ? | je sais qu'il y en a qui savent ! | alors merci
une fonction à adapter à ton besoin (rajouter la partie mois) :
Function NouveauNumero(ChampAIncrementer As String, _ TableSource As String) As String NouveauNumero = Year(Date) * 10000 + _ Right(Nz(DLookup(ChampAIncrementer, TableSource, _
Ensuite, il suffit de mettre : - dans le cas d'une utilisation monoposte, l'appel de la fonction
= NouveauNumero("LeChamp";"LaTable") dans la propriété valeur par défaut du controle lié au champ à incrémenter *dans le formulaire
de saisie*
- dans le cas d'une utilisation mono ou multi-postes, dans l'événement sur avant mise à jour du formulaire :
Private Sub Form_BeforeUpdate(Cancel As Integer) Me!LeControle.value = NouveauNumero("LeChamp","LaTable") End Sub
mettre le bon nom du champ et de la table qui contient la numérotation.
-- à+ Arnaud -------------------------------------------------- Conseils d'utilisation : http://users.skynet.be/mpfa/ Access Memorandum : http://memoaccess.free.fr /Réponses souhaitées sur ce forum, merci/ --------------------------------------------------
.
merci arnaud
cela marcherait bien si si si
je n'étais pas si nulle
Ton instruction marche super sauf que quand j'ajoute le
mois ???!!cela me met le numéro 20048002 pour le 2ème
numero.
voila ce que j'ai écrit
Function NouveauNumero(ChampAIncrementer As String, _
TableSource As String) As String
NouveauNumero = Year(date) * 10000 + Month(date) * 1000
+ _
Right(Nz(DLookup(ChampAIncrementer,
TableSource, _
"left([" & ChampAIncrementer & "],4) = "
& Year(date))) + 1, 4)
End Function
je commence juste avec vba et je ne comprends pas grand
chose encore
de plus j'ai un champ date_litige et je voudrais que le
champAIncrementer prenne l'année et le mois de ce champ.
maintenant tu sais tout
merci pour ton aide
nanou
-----Message d'origine-----
Bonjour,
nanou wrote:
| bonjour
| j'aurai voulu que le numero dans ma table soit formé
| comme ça : aamm et numero qui s'incrémente
| genre : 2004 = 04
| mois: mars = 03
| ce qui donnerait 0403001, et ensuite 0403002,...
| comment faire ?
| je sais qu'il y en a qui savent !
| alors merci
une fonction à adapter à ton besoin (rajouter la partie
mois) :
Function NouveauNumero(ChampAIncrementer As String, _
TableSource As String) As String
NouveauNumero = Year(Date) * 10000 + _
Right(Nz(DLookup(ChampAIncrementer,
TableSource, _
merci arnaud cela marcherait bien si si si je n'étais pas si nulle Ton instruction marche super sauf que quand j'ajoute le mois ???!!cela me met le numéro 20048002 pour le 2ème numero. voila ce que j'ai écrit Function NouveauNumero(ChampAIncrementer As String, _ TableSource As String) As String
NouveauNumero = Year(date) * 10000 + Month(date) * 1000 + _ Right(Nz(DLookup(ChampAIncrementer, TableSource, _ "left([" & ChampAIncrementer & "],4) = " & Year(date))) + 1, 4) End Function je commence juste avec vba et je ne comprends pas grand chose encore de plus j'ai un champ date_litige et je voudrais que le champAIncrementer prenne l'année et le mois de ce champ. maintenant tu sais tout merci pour ton aide nanou
-----Message d'origine----- Bonjour,
nanou wrote: | bonjour | j'aurai voulu que le numero dans ma table soit formé | comme ça : aamm et numero qui s'incrémente | genre : 2004 = 04 | mois: mars = 03 | ce qui donnerait 0403001, et ensuite 0403002,... | comment faire ? | je sais qu'il y en a qui savent ! | alors merci
une fonction à adapter à ton besoin (rajouter la partie mois) :
Function NouveauNumero(ChampAIncrementer As String, _ TableSource As String) As String NouveauNumero = Year(Date) * 10000 + _ Right(Nz(DLookup(ChampAIncrementer, TableSource, _
Ensuite, il suffit de mettre : - dans le cas d'une utilisation monoposte, l'appel de la fonction
= NouveauNumero("LeChamp";"LaTable") dans la propriété valeur par défaut du controle lié au champ à incrémenter *dans le formulaire
de saisie*
- dans le cas d'une utilisation mono ou multi-postes, dans l'événement sur avant mise à jour du formulaire :
Private Sub Form_BeforeUpdate(Cancel As Integer) Me!LeControle.value = NouveauNumero("LeChamp","LaTable") End Sub
mettre le bon nom du champ et de la table qui contient la numérotation.
-- à+ Arnaud -------------------------------------------------- Conseils d'utilisation : http://users.skynet.be/mpfa/ Access Memorandum : http://memoaccess.free.fr /Réponses souhaitées sur ce forum, merci/ --------------------------------------------------
.
Anor
Bonjour,
voyons, voyons, si tu es parvenue à la faire fonctionner, ce n'est déjà pas si mal.
Essaye celle-là :
Function NouveauNumero(ChampAIncrementer As String, _ TableSource As String) As String NouveauNumero = Format(Date, "yymm") & _ Format(Right(Nz(DLookup(ChampAIncrementer, TableSource, _ "left([" & ChampAIncrementer & "],4) = " & _ Format(Date, "yymm"))) + 1, 4), "0000") End Function
je reconnais que ce n'est pas évident à pondre, il faut y aller tout doucement en rajoutant des critères petit à petit.
Pas trop testée, juste sur une valeur, mais ça a l'air de marcher.
Sauf que ton champ doit absolument être au format texte car sinon, tu perds le 0 de l'année.
-- à+ Arnaud -------------------------------------------------- Conseils d'utilisation : http://users.skynet.be/mpfa/ Access Memorandum : http://memoaccess.free.fr /Réponses souhaitées sur ce forum, merci/ --------------------------------------------------
nanou wrote: | merci arnaud | cela marcherait bien si si si | je n'étais pas si nulle | Ton instruction marche super sauf que quand j'ajoute le | mois ???!!cela me met le numéro 20048002 pour le 2ème | numero. | voila ce que j'ai écrit | Function NouveauNumero(ChampAIncrementer As String, _ | TableSource As String) As String | | NouveauNumero = Year(date) * 10000 + Month(date) * 1000 | + _ | Right(Nz(DLookup(ChampAIncrementer, | TableSource, _ | "left([" & ChampAIncrementer & "],4) = " | & Year(date))) + 1, 4) | End Function | je commence juste avec vba et je ne comprends pas grand | chose encore | de plus j'ai un champ date_litige et je voudrais que le | champAIncrementer prenne l'année et le mois de ce champ. | maintenant tu sais tout | merci pour ton aide | nanou
Bonjour,
voyons, voyons, si tu es parvenue à la faire fonctionner, ce n'est déjà pas si mal.
Essaye celle-là :
Function NouveauNumero(ChampAIncrementer As String, _
TableSource As String) As String
NouveauNumero = Format(Date, "yymm") & _
Format(Right(Nz(DLookup(ChampAIncrementer, TableSource, _
"left([" & ChampAIncrementer & "],4) = " & _
Format(Date, "yymm"))) + 1, 4), "0000")
End Function
je reconnais que ce n'est pas évident à pondre, il faut y aller tout doucement
en rajoutant des critères petit à petit.
Pas trop testée, juste sur une valeur, mais ça a l'air de marcher.
Sauf que ton champ doit absolument être au format texte car sinon, tu perds le 0 de l'année.
--
à+
Arnaud
--------------------------------------------------
Conseils d'utilisation : http://users.skynet.be/mpfa/
Access Memorandum : http://memoaccess.free.fr
/Réponses souhaitées sur ce forum, merci/
--------------------------------------------------
nanou wrote:
| merci arnaud
| cela marcherait bien si si si
| je n'étais pas si nulle
| Ton instruction marche super sauf que quand j'ajoute le
| mois ???!!cela me met le numéro 20048002 pour le 2ème
| numero.
| voila ce que j'ai écrit
| Function NouveauNumero(ChampAIncrementer As String, _
| TableSource As String) As String
|
| NouveauNumero = Year(date) * 10000 + Month(date) * 1000
| + _
| Right(Nz(DLookup(ChampAIncrementer,
| TableSource, _
| "left([" & ChampAIncrementer & "],4) = "
| & Year(date))) + 1, 4)
| End Function
| je commence juste avec vba et je ne comprends pas grand
| chose encore
| de plus j'ai un champ date_litige et je voudrais que le
| champAIncrementer prenne l'année et le mois de ce champ.
| maintenant tu sais tout
| merci pour ton aide
| nanou
voyons, voyons, si tu es parvenue à la faire fonctionner, ce n'est déjà pas si mal.
Essaye celle-là :
Function NouveauNumero(ChampAIncrementer As String, _ TableSource As String) As String NouveauNumero = Format(Date, "yymm") & _ Format(Right(Nz(DLookup(ChampAIncrementer, TableSource, _ "left([" & ChampAIncrementer & "],4) = " & _ Format(Date, "yymm"))) + 1, 4), "0000") End Function
je reconnais que ce n'est pas évident à pondre, il faut y aller tout doucement en rajoutant des critères petit à petit.
Pas trop testée, juste sur une valeur, mais ça a l'air de marcher.
Sauf que ton champ doit absolument être au format texte car sinon, tu perds le 0 de l'année.
-- à+ Arnaud -------------------------------------------------- Conseils d'utilisation : http://users.skynet.be/mpfa/ Access Memorandum : http://memoaccess.free.fr /Réponses souhaitées sur ce forum, merci/ --------------------------------------------------
nanou wrote: | merci arnaud | cela marcherait bien si si si | je n'étais pas si nulle | Ton instruction marche super sauf que quand j'ajoute le | mois ???!!cela me met le numéro 20048002 pour le 2ème | numero. | voila ce que j'ai écrit | Function NouveauNumero(ChampAIncrementer As String, _ | TableSource As String) As String | | NouveauNumero = Year(date) * 10000 + Month(date) * 1000 | + _ | Right(Nz(DLookup(ChampAIncrementer, | TableSource, _ | "left([" & ChampAIncrementer & "],4) = " | & Year(date))) + 1, 4) | End Function | je commence juste avec vba et je ne comprends pas grand | chose encore | de plus j'ai un champ date_litige et je voudrais que le | champAIncrementer prenne l'année et le mois de ce champ. | maintenant tu sais tout | merci pour ton aide | nanou