Problème fonction Month et difficultés pour définition plage

Bonjour,

J'ai un soucis avec un de mes codes :

NFJa = Range("D4")
Range("J2:J" & Dligne) = Month(NFJa)

Voila, j'ai tapé ça, en D4 la date est 30/01/2016, il devrai logiquement me sortir 01 ou janvier si j'utilise la fonction format avant mais malheureusement il me sort 12 ou décembre .... je ne comprend pas .... quelqu'un a une idée ?

J'ai essayé avec ce code:

 Range("J2:J" & Dligne)=Format(Mid(NFJa,4,2),"mmmm")

Mais cela me donne le même résultat ....

Autre soucis, j'aimerais faire cela pour une plage allant de "J" & Dligne+1 à "J" & Nligne avec Dligne<Nligne seulement je n'arrive pas à en faire une plage ....

Merci d'avance pour vos réponses

Je ne vois pas le problème, mais je peux déjà dire :

  • on va certainement te demander un fichier en exemple
  • les dates en anglais sont au format mm/jj/aaaa (ils sont fous ces anglais), donc si on prends les caractères du milieu lors d'un cast implicite de date en texte, au mieux il sort jj, au pire, il sort les chiffres du nombre de la date (aujourd'hui, on est le jour 42444)

Bonjour,

Je peux déjà te dire que NFJa ce n'est pas pareil que NFA.

A+

Bonjour,

N'y aurait-il pas confusion entre NFA et NFJa?

Cdlt.

Re-Bonjour,

Si effectivement sur le code que je vous ai tapé il y avait une erreure mais ce n'est pas le soucis (problème d'inattention en le retapant).

Peuwi ce n'est pas un problème de dates en anglais car si je met juste mid(NFJa,4,2) il me sort 1 ( et non 01 ) mais dès que je passe par format ou month il y a erreure

Merci pour votre réactivité

Alors, il peut y avoir un problème dans l'autre sens :

mois(1), c'est le mois du jour 1, et le jour 1 pour Excel, c'est le dimanche 1 janvier 1900... Mais bon, en l'occurrence, c'est janvier aussi.

(par contre, mois(2), c'est le 2 janvier)

Bonjour

Bonjour à tous

Pour la 1ère syntaxe je ne m'explique pas la valeur retournée

Pour la seconde syntaxe essaie

Range("J2:J" & DLigne) = Format(NFJa, "mmmm")

Je pense qu'avec le fichier en cause, la solution aurait été trouvée

Banzai64: avec ta proposition cela fonctionne correctement !! Merci ( même si je ne comprend pas pourquoi cela ne fonctionnait pas ahah )

Concernant la plage, personne n'a une idée ??

Merci d'avance

Bonjour

Essaie

Set plage = Range("J" & DLigne + 1 & ":J" & NLigne)

Merci, c'est parfait

Bonjour,

Eh bien, je suis navré pour la plage, mais, je ne sais pas d’où vient le problème. Cependant pour t’aider à mieux appréhender l’Excel, je te recommande de suivre des tutoriels.

Rechercher des sujets similaires à "probleme fonction month difficultes definition plage"