1 membre
Connectés : ( personne )
- La Charte du Forum - Forum - Questions générale
Sujet n° 509 |
Numero de semaine |
le 17/05/2011 : 16:19 par imas7
visiteur |
Bonjour PierreJ'ai vu la fonction que tu as posé concernant la correction du bug sur le numéro de la semaine. Cependant, j'ai une question à te poser. Je n'aariver pas à l'adapter à mon programme. J'ai 2 champs : Code_Periode (de type texte) et Nom_Periode ( de type date heure). J'aimerais convertir Nom_Periode en format "ww-aaaa". J'ai vu la fonction que tu publié (corrigeant le bug de microsoft sur le numero de la semaine) mais je n 'arrive pas à l'adapter à mon prog. Quand est ce que je dois appeler la fonction pour la le changement de format? Merci d'avance |
|
|
Réponse n° 1 -------- le 17/05/2011 : 22:42 par 3Stone
Administrateur
|
Bonjour,
Pour obtenir le format "ww-aaaa", il suffit d'adapter légèrement la fonction.
A la fin de la fonction, tu remplaces :
Code :
fnWeek = NoAnnee & "/" & Format(NoSemaine, "00")
par :
Code :
fnWeek = Format(NoSemaine, "00") & "-" & NoAnnee
Pour l'utilisation, c'est des plus simple, grâce au fait que c'est une fonction, justement. Il suffit pour cela de la placer dans une module général (donc pas "sous" un formulaire).
Pour Access 2000-2003, via Insertion/Modules et pour Access 2007-2010, via l'onglet Créer/Module.
Une fois la fonction placée dans le module, il faut compiler le code pour vérifier la bonne saisie (via Débogage, Compiler DB)
Pour l'utiliser, c'est comme pour toutes les fonctions intégrées d'Access, tu as une série de possibilités.
Soit tu l'utilises directement dans une requête, celle qui aliment le formulaire ou l'état. Pour cela, il suffit de créer un champ calculé qui contiendra :
PeriodeFormatee: fnWeek(Nom_Periode)
Soit tu l'utilises dans la source de la zone de texte du formulaire ou de l'état qui affiche Nom_Periode. Mais tu écriras :
= fnWeek(Nom_Periode)
En fait, il suffit d'utiliser la fonction là ou tu as besoin de son résultat, et de lui transmettre ce qu'elle doit traiter
Cordialement,
Pierre(3stone) |
|
|
Réponse n° 2 -------- le 18/05/2011 : 02:48 par imas7
visiteur |
Bonsoir PierreMille merci pour ton coup de pouce et ta diligence. Je galérais grave jusqu'à ce que je découvre ton site. Merci encore |
|
|
Réponse n° 3 -------- le 18/05/2011 : 14:25 par imas7
visiteur |
Bonjour PierreC'est encore moi. Je ne m'en sort vraiment pas avec la fonction.J'ai essayé de créer une requête comme tu me l'as conseillé en créant un champ formaté " PeriodeFormatee: fnWeek(Nom_Periode) " mais j'obtiens le message suivant "Fonction 'fnWeek' non définie dans l'expression". J'ai googler mais pas de solution. Pourras tu m'aider un peu stp. Merci davance |
|
|
Réponse n° 5 -------- le 18/05/2011 : 15:08 par imas7
visiteur |
J'ai créer un nouveau module comme tu me l'a recommandé. Le module s'appele : mod_fnWeek dans lequel se trouve uniquement la fonction fnWeek.Mais j'ai un autre message dans la même requête : "Nom ambigu. dans l'expression fnWeek([Nom_Periode])'. |
|
|
Réponse n° 6 -------- le 18/05/2011 : 15:27 par imas7
visiteur |
Problème régléAu fait quand j'ai crée le nouveau module mod_fnWeek comme tu me l'a recommandé, j'ai oublié de supprimé la fonction dans un autre module que testais hier.Tout fonctionne correctement maintenant;grâce à toi. 1000 mercis |
|
|
sujet actif
sujet clos
Important!
Nouveau message -
Rectifier message
Clôturer sujet
Remonter
|