macro érronée

Le
ptck
Bonsoir
j'ai cette macro quand je tape la date du 280209, c'est juillet qui
s'affiche en colonne 3
quand je regarde "CDATE" il apparaît la date : 08032667 ??

si vous avez une explication
merci de votre aide

Sub Macro2()
Dim mois As String

mois = Application.InputBox("Tapez la date du stock sous forme jjmmaa :",
"Saisie", , , , , , 2)
Sheets(2).Range(Cells(1, 1), Cells(5, 1)) = mois
Sheets(2).Range(Cells(1, 2), Cells(5, 2)) = Mid(mois, 3, 2)
Sheets(2).Range(Cells(1, 3), Cells(5, 3)) =
Application.Proper(Format(CDate(mois), "mmmm"))

End Sub
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
LSteph
Le #18889421
Bonjour,
1 représente 1 jour
soit en date 01/01/1900

2
2/01/1900

280209 est un nombre pas une date
en date cela fait 08/03/2067

28/02/2009 serait en nombre 38972

aujourd'hui nous sommes le 12/03/2009
soit en nombre 39884

essaie dans une feuille passe du format date au format nombre.

Est-ce plus clair?

Dim mois as string
string renvoie une chaine de caractères

vaudrait mieux taper la date du stock au format dd/mm/yyyy
soit in french jj/mm/aaaa

Pour reprendre presque ton exemple:

Sub Macro2()
Dim mois As String

mois = Application.InputBox _
("Tapez la date du stock sous forme jj/mm/aaaa :", _
"Saisie", , , , , , 2)
Feuil2.Cells(1, 1) = DateValue(mois)
Feuil2.Cells(1, 2) = Month([a1])
Application.Proper (Format(CDate(mois), "mmmm"))

End Sub


--
lSteph

ptck a écrit :
Bonsoir
j'ai cette macro quand je tape la date du 280209, c'est juillet qui
s'affiche en colonne 3
quand je regarde "CDATE" il apparaît la date : 08032667 ??

si vous avez une explication
merci de votre aide

Sub Macro2()
Dim mois As String

mois = Application.InputBox("Tapez la date du stock sous forme jjmmaa :",
"Saisie", , , , , , 2)
Sheets(2).Range(Cells(1, 1), Cells(5, 1)) = mois
Sheets(2).Range(Cells(1, 2), Cells(5, 2)) = Mid(mois, 3, 2)
Sheets(2).Range(Cells(1, 3), Cells(5, 3)) =
Application.Proper(Format(CDate(mois), "mmmm"))

End Sub




LSteph
Le #18889411
..un pti bout a sauté

Sub Macro2()
Dim mois As String

mois = Application.InputBox _
("Tapez la date du stock sous forme jj/mm/aaaa :", _
"Saisie", , , , , , 2)
Feuil2.Cells(1, 1) = DateValue(mois)
Feuil2.Cells(1, 2) = Month([a1])
Feuil2.Cells(1, 3) = Application.Proper(Format(CDate(mois), "mmmm"))

End Sub



LSteph a écrit :
Bonjour,
1 représente 1 jour
soit en date 01/01/1900

2
2/01/1900

280209 est un nombre pas une date
en date cela fait 08/03/2067

28/02/2009 serait en nombre 38972

aujourd'hui nous sommes le 12/03/2009
soit en nombre 39884

essaie dans une feuille passe du format date au format nombre.

Est-ce plus clair?

Dim mois as string
string renvoie une chaine de caractères

vaudrait mieux taper la date du stock au format dd/mm/yyyy
soit in french jj/mm/aaaa

Pour reprendre presque ton exemple:

Sub Macro2()
Dim mois As String

mois = Application.InputBox _
("Tapez la date du stock sous forme jj/mm/aaaa :", _
"Saisie", , , , , , 2)
Feuil2.Cells(1, 1) = DateValue(mois)
Feuil2.Cells(1, 2) = Month([a1])
Application.Proper (Format(CDate(mois), "mmmm"))

End Sub


--
lSteph

ptck a écrit :
Bonsoir
j'ai cette macro quand je tape la date du 280209, c'est juillet qui
s'affiche en colonne 3
quand je regarde "CDATE" il apparaît la date : 08032667 ??

si vous avez une explication
merci de votre aide

Sub Macro2()
Dim mois As String

mois = Application.InputBox("Tapez la date du stock sous forme
jjmmaa :", "Saisie", , , , , , 2)
Sheets(2).Range(Cells(1, 1), Cells(5, 1)) = mois
Sheets(2).Range(Cells(1, 2), Cells(5, 2)) = Mid(mois, 3, 2)
Sheets(2).Range(Cells(1, 3), Cells(5, 3)) =
Application.Proper(Format(CDate(mois), "mmmm"))

End Sub





Modeste
Le #18889401
Bonsour® ptck

j'ai cette macro quand je tape la date du 280209, c'est juillet qui
s'affiche en colonne 3
quand je regarde "CDATE" il apparaît la date : 08032667 ??

si vous avez une explication
merci de votre aide

Sub Macro2()
Dim mois As String
mois = Application.InputBox("Tapez la date du stock sous forme
jjmmaa :", "Saisie", , , , , , 2)
Sheets(2).Range(Cells(1, 1), Cells(5, 1)) = mois
Sheets(2).Range(Cells(1, 2), Cells(5, 2)) = Mid(mois, 3, 2)
Sheets(2).Range(Cells(1, 3), Cells(5, 3)) =
Application.Proper(Format(CDate(mois), "mmmm"))
End Sub



R.A.S
la macro fait parfaitement ce qui est écrit !!!
280209 jours aprés le 01/01/1900
c'est bien le vendredi 8 mars 2667

;o)))
Sub Macro2()
Dim ladate As String
ladate = Application.InputBox("Tapez la date du stock sous forme jjmmaa :", "Saisie", , , , , , 2)
With Sheets(2)
.Cells(1, 1) = Format(ladate, "00""/""00""/""00")
.Cells(1, 3) = Application.Proper(Format(.Cells(1, 1), "mmmm"))
End With
End Sub
LSteph
Le #18889471
;o)

Dites votre ferveur , vos mirettes?

Bonne nuit.




Modeste a écrit :
Bonsour® ptck

j'ai cette macro quand je tape la date du 280209, c'est juillet qui
s'affiche en colonne 3
quand je regarde "CDATE" il apparaît la date : 08032667 ??

si vous avez une explication
merci de votre aide

Sub Macro2()
Dim mois As String
mois = Application.InputBox("Tapez la date du stock sous forme
jjmmaa :", "Saisie", , , , , , 2)
Sheets(2).Range(Cells(1, 1), Cells(5, 1)) = mois
Sheets(2).Range(Cells(1, 2), Cells(5, 2)) = Mid(mois, 3, 2)
Sheets(2).Range(Cells(1, 3), Cells(5, 3)) >> Application.Proper(Format(CDate(mois), "mmmm"))
End Sub



R.A.S
la macro fait parfaitement ce qui est écrit !!!
280209 jours aprés le 01/01/1900
c'est bien le vendredi 8 mars 2667

;o)))
Sub Macro2()
Dim ladate As String
ladate = Application.InputBox("Tapez la date du stock sous forme jjmmaa :", "Saisie", , , , , , 2)
With Sheets(2)
.Cells(1, 1) = Format(ladate, "00""/""00""/""00")
.Cells(1, 3) = Application.Proper(Format(.Cells(1, 1), "mmmm"))
End With
End Sub






gmlsteph
Le #18890661
..pour en revenir à nos mirettes:

"00""/""00""/""00

Ta réponse souscrit précisément à ce qui était demandé, la mi enne
relevait d'une préférence.

Ces 3 paires d'yeux pratique pour
ne pas avoir à saisir les "/" nez.

;o)

En face d'une feuille excel lorsqu'il y a un nouvel utilisateur , il
tape un nombre simplement , puis avec deux points pour séparer des
heures minutes secondes, enfin lui montre qu'on met le nez "/" aux
bons endroit entre les paires d'yeux "00" pour entrer une date et
qu'il vaut mieux (excel permet cela) pouvoir choisir l'année , le cas
échéant et dans ce cas l'entrer précisément sur 4 chr, il lui faut un
certain temps d'adaptation, mais il acquiert vite cela comme un
réflexe.
Si je lui mets un userform ou autre inputbox pour faire une saisie de
date j'aime autant qu'il n'ait pas à modifier ses bonnes habitudes.

Amicales salutations.

--
lSteph
;-)
J'aime aussi quand on est concis mai parfois c'est (l'inverse) pour la
pédagogie....


On 13 mar, 00:07, LSteph
;o)

Dites votre ferveur , vos mirettes?

Bonne nuit.

Modeste a écrit :



> Bonsour® ptck  

>> j'ai cette macro quand je tape la date du 280209, c'est juillet qui
>> s'affiche en colonne 3
>> quand je regarde "CDATE" il apparaît la date : 08032667 ??

>> si vous avez une explication
>> merci de votre aide

>> Sub Macro2()
>>  Dim mois As String
>>  mois = Application.InputBox("Tapez la date du stock sous forme
>> jjmmaa :", "Saisie", , , , , , 2)
>>  Sheets(2).Range(Cells(1, 1), Cells(5, 1)) = mois
>> Sheets(2).Range(Cells(1, 2), Cells(5, 2)) = Mid(mois, 3, 2)
>> Sheets(2).Range(Cells(1, 3), Cells(5, 3)) =
>> Application.Proper(Format(CDate(mois), "mmmm"))
>> End Sub

> R.A.S
> la macro fait parfaitement ce qui est écrit !!!
> 280209 jours aprés le 01/01/1900
>  c'est bien le vendredi 8 mars 2667

> ;o)))
> Sub Macro2()
>   Dim ladate As String
>   ladate = Application.InputBox("Tapez la date du stock sous forme jjmmaa :", "Saisie", , , , , , 2)
>   With Sheets(2)
>     .Cells(1, 1) = Format(ladate, "00""/""00""/""00")
>     .Cells(1, 3) = Application.Proper(Format(.Cells(1, 1), "mmmm" ))
>   End With
> End Sub- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -


ptck
Le #18895441
Messieurs je n'ai qu'un mot Merci
ptck

..pour en revenir à nos mirettes:

"00""/""00""/""00

Ta réponse souscrit précisément à ce qui était demandé, la mienne
relevait d'une préférence.

Ces 3 paires d'yeux pratique pour
ne pas avoir à saisir les "/" nez.

;o)

En face d'une feuille excel lorsqu'il y a un nouvel utilisateur , il
tape un nombre simplement , puis avec deux points pour séparer des
heures minutes secondes, enfin lui montre qu'on met le nez "/" aux
bons endroit entre les paires d'yeux "00" pour entrer une date et
qu'il vaut mieux (excel permet cela) pouvoir choisir l'année , le cas
échéant et dans ce cas l'entrer précisément sur 4 chr, il lui faut un
certain temps d'adaptation, mais il acquiert vite cela comme un
réflexe.
Si je lui mets un userform ou autre inputbox pour faire une saisie de
date j'aime autant qu'il n'ait pas à modifier ses bonnes habitudes.

Amicales salutations.

--
lSteph
;-)
J'aime aussi quand on est concis mai parfois c'est (l'inverse) pour la
pédagogie....


On 13 mar, 00:07, LSteph
;o)

Dites votre ferveur , vos mirettes?

Bonne nuit.

Modeste a écrit :



> Bonsour® ptck

>> j'ai cette macro quand je tape la date du 280209, c'est juillet qui
>> s'affiche en colonne 3
>> quand je regarde "CDATE" il apparaît la date : 08032667 ??

>> si vous avez une explication
>> merci de votre aide

>> Sub Macro2()
>> Dim mois As String
>> mois = Application.InputBox("Tapez la date du stock sous forme
>> jjmmaa :", "Saisie", , , , , , 2)
>> Sheets(2).Range(Cells(1, 1), Cells(5, 1)) = mois
>> Sheets(2).Range(Cells(1, 2), Cells(5, 2)) = Mid(mois, 3, 2)
>> Sheets(2).Range(Cells(1, 3), Cells(5, 3)) > >> Application.Proper(Format(CDate(mois), "mmmm"))
>> End Sub

> R.A.S
> la macro fait parfaitement ce qui est écrit !!!
> 280209 jours aprés le 01/01/1900
> c'est bien le vendredi 8 mars 2667

> ;o)))
> Sub Macro2()
> Dim ladate As String
> ladate = Application.InputBox("Tapez la date du stock sous forme jjmmaa
> :", "Saisie", , , , , , 2)
> With Sheets(2)
> .Cells(1, 1) = Format(ladate, "00""/""00""/""00")
> .Cells(1, 3) = Application.Proper(Format(.Cells(1, 1), "mmmm"))
> End With
> End Sub- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -


Publicité
Poster une réponse
Anonyme