1
votes

Format de date MS Access comme AAAA-AA (année en cours et année suivante)

Je souhaite écrire dans un rapport Access "examen final 2019-20" dans ce format.

Il doit s'agir de l'année en cours à quatre chiffres, suivie de l'année suivante à deux chiffres: aaaa-aa . Existe-t-il un moyen de Formater la Date () actuelle pour résoudre ce problème?


0 commentaires

4 Réponses :


1
votes

Essayez ceci, cela devrait être ce dont vous avez besoin:

Format(Date(),"yyyy-") & Right(Year(Date())+1,2)

Notez que lorsque vous n'utilisez pas cette expression dans le VBE dans une fenêtre de code, mais dans un champ de propriété, les virgules doivent être remplacé par des points-virgules.


0 commentaires

1
votes

Cela ne peut pas être un Format mais peut être une Expression :
Année (maDate) & "-" & droite (Année (maDate) +1,2)


7 commentaires

Pourquoi ne serait-il pas possible d'utiliser le Format ? Je l'ai essayé avec succès dans la source de contrôle d'une zone de texte et également dans une requête.


Vous utilisez la fonction Format () . C'est donc une expression calculée, pas une mise en forme. Votre solution est excellente :)


@Rev, cela a résolu mon problème. Gloire. Pouvez-vous expliquer cette expression +1,2


La portée à surveiller est Right (Year (Date ()) + 1,2) . Year (Date ()) + 1 récupère l'année en cours sous forme de nombre et ajoute une année. Ensuite, la fonction Right coupe les deux derniers chiffres.


@Rev, compris. Mais cela pourrait être un travail à cette condition, supposons que l'année civile change après décembre, mais que l'année financière ait été modifiée en avril. À cette condition, cela ne fonctionnera pas. Et le rapport sera publié deux fois au cours de l'exercice. Et l'exercice financier commence d'avril à mars


Quelqu'un peut-il avoir une solution à ce problème. La session commence chaque année d'avril à mars. Le rapport doit publier deux fois cette année un premier rapport en octobre et un autre en mars. Dans les deux conditions, l'année sera 2019-20. Après mars, l'année 2020 changera automatiquement. Comment faire. L'expression ci-dessous ne fonctionnera pas avec cette condition Format (Date (), "aaaa-") & Droite (Année (Date ()) + 1,2


Vous ne devriez pas poser une question, pas même la vôtre. Mais voyez ma réponse détaillée, s'il vous plaît, comment compenser l'année pour obtenir le résultat souhaité.



1
votes

Vous pouvez également utiliser le Format pour les deux parties:

Format(Date(),"yyyy-") & Format(DateAdd("yyyy",1,Date()),"yy")


0 commentaires

1
votes

Ou, pour le plaisir , utilisez Format une seule fois:

=Format(Year(DateAdd("m",9,Date()))*100+(Year(DateAdd("m",9,Date()))+1) Mod 100,"0000-00")

La session commence chaque année d'avril à mars. Signaler le besoin de publier deux fois cette année-là un premier rapport en octobre et un autre sur Mars. Dans les deux conditions, l'année sera 2019-20. Après mars, l'année changez 2020-21 automatiquement.

Cela nécessite un ajustement de l'année fiscale, ce qui peut être fait comme ceci:

=Format(Year(Date())*100+(Year(Date())+1) Mod 100,"0000-00")


1 commentaires

Je sens que cela se transforme en Code Golf ;-)