Transformation date

Le
JulieH
Bonjour à toutes et tous,

Je sais transformer une date en format américain par Macro :
Range("B8:B" & y).NumberFormat = "[$-409]mmmm d, yyyy;@"

Je voudrais maintenant récupérer une date avec ce format dans une
variable pour l'utiliser par la suite :
DateDébut = [B8].value
[Q1] = "Test " & DateDébut
Evidemment, je me retrouve avec "Test 06/10/2009" alors que je
voudrais "Test October 6, 2009"

Quelqu'un peut-il m'aider ?

Merci d'avance

Julie
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
JulieH
Le #20529921
Bonjour et merci pour t'intéresser à mon problème,

Voir mon autre post.

Mes cellules de départ sont par exemple : 12/03/09 et 25/09/09, je
suis en France et je ne souhaite pas modifier les paramètres de mon
ordinateur, enfin je voudrais obtenir par macro et avec des variables :
"Collection Date = March 12, 2009 to September 25, 2009"

Julie

michdenis a écrit :
Bonjour,

Il faudrait d'abord que tu dises ce que contient la cellule avant que tu appliques le
format "Date"

Si le contenu de la cellule est une date reconnu par l'application Excel auquel tu veux
passer un format américain, ceci est suffisant :

Range("A1").NumberFormat = "MMMM, d YYYY"

Si tu veux récupérer cette date en vba,
x = range("A1") est suffisant.

Tu dois te rappeler que pour Excel, le format ce n'est que l'apparence,
la valeur numérique que contient la cellule ou la variable ne change
pas parce que tu modifie le format. Cependant, il est utile de connaître
ton point de départ, soit, le contenu original de ta cellule...et le format
par défaut défini dans ton panneau de configuration de Windows.



"JulieH" discussion : #
Bonjour à toutes et tous,

Je sais transformer une date en format américain par Macro :
Range("B8:B" & y).NumberFormat = "[$-409]mmmm d, yyyy;@"

Je voudrais maintenant récupérer une date avec ce format dans une
variable pour l'utiliser par la suite :
DateDébut = [B8].value
[Q1] = "Test " & DateDébut
Evidemment, je me retrouve avec "Test 06/10/2009" alors que je
voudrais "Test October 6, 2009"

Quelqu'un peut-il m'aider ?

Merci d'avance

Julie



Daniel.C
Le #20529911
Bonjour.
DateDébut = [B8].Value2
[Q1] = DateDébut
[Q1].NumberFormat = """test ""[$-409]mmmm d, yyyy"
Cordialement.
Daniel

Bonjour à toutes et tous,

Je sais transformer une date en format américain par Macro :
Range("B8:B" & y).NumberFormat = "[$-409]mmmm d, yyyy;@"

Je voudrais maintenant récupérer une date avec ce format dans une variable
pour l'utiliser par la suite :
DateDébut = [B8].value
[Q1] = "Test " & DateDébut
Evidemment, je me retrouve avec "Test 06/10/2009" alors que je voudrais
"Test October 6, 2009"

Quelqu'un peut-il m'aider ?

Merci d'avance

Julie


michdenis
Le #20530481
"JulieH" discussion :
Bonjour et merci pour t'intéresser à mon problème,

Voir mon autre post.
En supposant que tes dates sont dans les cellules A1 et A2
Ceci devrait être suffisant

Dim Collection_Date As String
Collection_Date = _
Format(Range("A1"), "MMMM, d YYYY") & _
" to " & Format(Range("B1"), "MMMM, d YYYY")



Mes cellules de départ sont par exemple : 12/03/09 et 25/09/09, je
suis en France et je ne souhaite pas modifier les paramètres de mon
ordinateur, enfin je voudrais obtenir par macro et avec des variables :
"Collection Date = March 12, 2009 to September 25, 2009"

Julie

michdenis a écrit :
Bonjour,

Il faudrait d'abord que tu dises ce que contient la cellule avant que tu appliques le
format "Date"

Si le contenu de la cellule est une date reconnu par l'application Excel auquel tu veux
passer un format américain, ceci est suffisant :

Range("A1").NumberFormat = "MMMM, d YYYY"

Si tu veux récupérer cette date en vba,
x = range("A1") est suffisant.

Tu dois te rappeler que pour Excel, le format ce n'est que l'apparence,
la valeur numérique que contient la cellule ou la variable ne change
pas parce que tu modifie le format. Cependant, il est utile de connaître
ton point de départ, soit, le contenu original de ta cellule...et le format
par défaut défini dans ton panneau de configuration de Windows.



"JulieH" discussion : #
Bonjour à toutes et tous,

Je sais transformer une date en format américain par Macro :
Range("B8:B" & y).NumberFormat = "[$-409]mmmm d, yyyy;@"

Je voudrais maintenant récupérer une date avec ce format dans une
variable pour l'utiliser par la suite :
DateDébut = [B8].value
[Q1] = "Test " & DateDébut
Evidemment, je me retrouve avec "Test 06/10/2009" alors que je
voudrais "Test October 6, 2009"

Quelqu'un peut-il m'aider ?

Merci d'avance

Julie



Patrick
Le #20530211
Bonjour,

Il faut utiliser la fonction "Format" :

[Q1] = "Test " & Format(DateDébut, "[$-409]mmmm d, yyyy")

--
Patrick


"JulieH" wrote:

Bonjour à toutes et tous,

Je sais transformer une date en format américain par Macro :
Range("B8:B" & y).NumberFormat = "[$-409]mmmm d, yyyy;@"

Je voudrais maintenant récupérer une date avec ce format dans une
variable pour l'utiliser par la suite :
DateDébut = [B8].value
[Q1] = "Test " & DateDébut
Evidemment, je me retrouve avec "Test 06/10/2009" alors que je
voudrais "Test October 6, 2009"

Quelqu'un peut-il m'aider ?

Merci d'avance

Julie

.



Daniel.C
Le #20530341
Bonjour.
Pas forcé, si tu veux réutiliser la valeur de la cellule sans la
remodifier.
Daniel

Bonjour,

Il faut utiliser la fonction "Format" :

[Q1] = "Test " & Format(DateDébut, "[$-409]mmmm d, yyyy")

--
Patrick


"JulieH" wrote:

Bonjour à toutes et tous,

Je sais transformer une date en format américain par Macro :
Range("B8:B" & y).NumberFormat = "[$-409]mmmm d, yyyy;@"

Je voudrais maintenant récupérer une date avec ce format dans une
variable pour l'utiliser par la suite :
DateDébut = [B8].value
[Q1] = "Test " & DateDébut
Evidemment, je me retrouve avec "Test 06/10/2009" alors que je
voudrais "Test October 6, 2009"

Quelqu'un peut-il m'aider ?

Merci d'avance

Julie

.





JulieH
Le #20531001
Bonsoir et merci à tous pour vos réponses

Je suis plutôt intéressée par la réponse de Patrick (voir mon second et
3ième post).
Par contre sa formule a le problème déjà évoqué plus tôt, à savoir que
le mois est en Français : "Test septembre 12, 2009" pour "12/09/09".
Evidemment, celle de Daniel fonctionne mais je ne vois pas comment
l'utiliser dans mon cas.

Julie





Patrick a écrit :
Bonjour,

Il faut utiliser la fonction "Format" :

[Q1] = "Test " & Format(DateDébut, "[$-409]mmmm d, yyyy")



Daniel.C
Le #20531491
En sortant la grosse artillerie :

Sub test()
Mois = Array("January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December")
datedébut = [L1].Value
datefin = [M1].Value
Var = Mois(7)
[R1] = "Collection Date = " & Mois(Month(datedébut) - 1) & " " &
Day(datedébut) & _
", " & Year(datedébut) & " to " & Mois(Month(datefin) - 1) & " " &
Day(datefin) & _
", " & Year(datefin)
End Sub

Daniel


Bonsoir et merci à tous pour vos réponses

Je suis plutôt intéressée par la réponse de Patrick (voir mon second et
3ième post).
Par contre sa formule a le problème déjà évoqué plus tôt, à savoir que le
mois est en Français : "Test septembre 12, 2009" pour "12/09/09".
Evidemment, celle de Daniel fonctionne mais je ne vois pas comment
l'utiliser dans mon cas.

Julie





Patrick a écrit :
Bonjour,

Il faut utiliser la fonction "Format" :

[Q1] = "Test " & Format(DateDébut, "[$-409]mmmm d, yyyy")





JulieH
Le #20530991
Bonsoir Daniel,

Evidemment, c'est la très grosse artillerie !!! mais bon s'il n'y a pas
plus simple, je vais m'en contenter.
Je n'ai pas tout compris. J'ai enlevé la ligne "Var = Mois(7) dont je
ne comprenais pas l'utilité et cela a fonctionné aussi.

Merci pour ton aide.
Julie



Daniel.C a écrit :
En sortant la grosse artillerie :

Sub test()
Mois = Array("January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December")
datedébut = [L1].Value
datefin = [M1].Value
Var = Mois(7)
[R1] = "Collection Date = " & Mois(Month(datedébut) - 1) & " " &
Day(datedébut) & _
", " & Year(datedébut) & " to " & Mois(Month(datefin) - 1) & " " &
Day(datefin) & _
", " & Year(datefin)
End Sub

Daniel


Bonsoir et merci à tous pour vos réponses

Je suis plutôt intéressée par la réponse de Patrick (voir mon
second et 3ième post).
Par contre sa formule a le problème déjà évoqué plus tôt, à savoir
que le mois est en Français : "Test septembre 12, 2009" pour "12/09/09".
Evidemment, celle de Daniel fonctionne mais je ne vois pas comment
l'utiliser dans mon cas.

Julie





Patrick a écrit :
Bonjour,

Il faut utiliser la fonction "Format" :

[Q1] = "Test " & Format(DateDébut, "[$-409]mmmm d, yyyy")









Rouch
Le #20533561
Bonjour,

On peux avoir le même résultat sans passer par du VBA en utilisant dans
la cellule Q1 cette formule :
=TEXTE(B8, "[$-409]mmmm j ,aaaa")

Cordialement.

Rouch

JulieH a écrit :
Bonjour à toutes et tous,

Je sais transformer une date en format américain par Macro :
Range("B8:B" & y).NumberFormat = "[$-409]mmmm d, yyyy;@"

Je voudrais maintenant récupérer une date avec ce format dans une variable
pour l'utiliser par la suite :
DateDébut = [B8].value
[Q1] = "Test " & DateDébut
Evidemment, je me retrouve avec "Test 06/10/2009" alors que je voudrais
"Test October 6, 2009"

Quelqu'un peut-il m'aider ?

Merci d'avance

Julie


Daniel.C
Le #20533721
Bonjour.
Le problème est d'utiliser une variable, donc de passer par VBA.
Cordialement.
Daniel

Bonjour,

On peux avoir le même résultat sans passer par du VBA en utilisant dans la
cellule Q1 cette formule :
=TEXTE(B8, "[$-409]mmmm j ,aaaa")

Cordialement.

Rouch

JulieH a écrit :
Bonjour à toutes et tous,

Je sais transformer une date en format américain par Macro :
Range("B8:B" & y).NumberFormat = "[$-409]mmmm d, yyyy;@"

Je voudrais maintenant récupérer une date avec ce format dans une
variable pour l'utiliser par la suite :
DateDébut = [B8].value
[Q1] = "Test " & DateDébut
Evidemment, je me retrouve avec "Test 06/10/2009" alors que je voudrais
"Test October 6, 2009"

Quelqu'un peut-il m'aider ?

Merci d'avance

Julie




Publicité
Poster une réponse
Anonyme