OVH Cloud OVH Cloud

Question Beginning 1: VraiFaux imbriqués

3 réponses
Avatar
atmus
Bonsoir,

Dans une requ=EAte j'ai un champ MOIS o=F9 on trouve les trois=20
initiales des mois (JAN, FEV, MAR, AVR, ...)

Je voudrais ajouter un champ qui me renvoie le n=B0 du mois=20
correspondant 1,2,3,4, ...etc

J'ai utilis=E9 VraiFaux mais apparement impossible=20
d'utiliser 12 vraifaux en m=EAme temps.

Y'a t'il une solution plus simple ou une fonction qui=20
pourrait faire l'affaire

Merci

3 réponses

Avatar
Raymond
Bonsoir.
les noms de mois pouvant ne pas être normalisés, il est préférable de passer
par une fonction qui pourra être appelée par vba ou dans une requête ou dans
un formulaire ou un état:
Placer cette fonction dans un module standard normal:
Public Function NoMois(Lemois As String) As Long
Select Case Lemois
Case "Jan": NoMois = 1
Case "Fév": NoMois = 2
Case "mar": NoMois = 3
'ainsi de suite
End Select
End Function

En vba cette fonction sera appelée par:
NoMois("Fév")

dans un source contrôle par exemple:
=NoMois([MonMois])

--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.


"atmus" a écrit dans le message de
news:011801c34fae$977cd3f0$
Bonsoir,

Dans une requête j'ai un champ MOIS où on trouve les trois
initiales des mois (JAN, FEV, MAR, AVR, ...)

Je voudrais ajouter un champ qui me renvoie le n° du mois
correspondant 1,2,3,4, ...etc

J'ai utilisé VraiFaux mais apparement impossible
d'utiliser 12 vraifaux en même temps.

Y'a t'il une solution plus simple ou une fonction qui
pourrait faire l'affaire

Merc
Avatar
3stone
Salut,

atmus
Dans une requête j'ai un champ MOIS où on trouve les trois
initiales des mois (JAN, FEV, MAR, AVR, ...)

Je voudrais ajouter un champ qui me renvoie le n° du mois
correspondant 1,2,3,4, ...etc

J'ai utilisé VraiFaux mais apparement impossible
d'utiliser 12 vraifaux en même temps.
-----------------------------------------------------------

Il n'y a AUCUN intérêt à sauver "JAN", "FEV"... dans le champ d'une table!
Cela complique inutilement toutes les conversions et vérifications.

Que faire pour que l'utilisateur ne saisisse pas "Fév" au lieu de "Fev" ?

L'idéal, est de sauver une date, elle permet toutes les manipulations et extractions.

A défaut, sauver le numéro du mois (1, 2, 3, ... , 12)
Pour cela, placer une petite zone de liste sur le formulaire, avec 2 colonnes.
La première, cachée, contiendra les numéros des mois;
La seconde, visible pour l'utilisateur, contiendra le nom du mois en entier.

La conversion, si nécessaire, dans le sens nombre vers texte, est beaucoup plus simple.
Eventuellement, avec une petite fonction.


--
A+
Pierre (3stone) Access MVP
--------------------------------------
Une pour tous, tous pour une ;-)
http://users.skynet.be/mpfa/
--------------------------------------
Avatar
Daniel Carollo
Bonjour Atmus!

En plus de la solution proposee par Raymond, je vous propose d'utiliser la
fonction Format:
Format("2003/" & leMois & "/01", "mm")
Je ne l'ai teste qu'en Glais, mais sur un systeme Francais, avec les
parametres regionaux "quivontbien", ca devrait marcher aussi bien.

Bonne continuation.

Daniel :-)

Computing Technologies International - www.computing-tech.com - We
provide solutions...

"atmus" wrote in message
news:011801c34fae$977cd3f0$
Bonsoir,

Dans une requête j'ai un champ MOIS où on trouve les trois
initiales des mois (JAN, FEV, MAR, AVR, ...)

Je voudrais ajouter un champ qui me renvoie le n° du mois
correspondant 1,2,3,4, ...etc

J'ai utilisé VraiFaux mais apparement impossible
d'utiliser 12 vraifaux en même temps.

Y'a t'il une solution plus simple ou une fonction qui
pourrait faire l'affaire

Merci