Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

format date dans un inputbox

6 réponses
Avatar
Bernard
Bonjour,

j'ai un probl=E8me avec les dates dans un inputbox que j'ai=20
r=E9solu mais dont je pense qu'il y a une meilleure=20
solution,
Je suis sous W2K et Excel 2000 fran=E7ais, Options=20
r=E9gionales fran=E7ais

Dim DateEclat=E9e
Dim MessageD=E9but, TitreD=E9but, DateD=E9but, DateD=E9butString
MessageD=E9but =3D "Entrez une date de d=E9but sous la forme=20
jj/mm/aaaa"
TitreD=E9but =3D "Date de d=E9but"
Do
DateD=E9butString =3D InputBox(MessageD=E9but, TitreD=E9but)
DateEclat=E9e =3D Split(DateD=E9butString, "/")=20

'pour intervertir le mois et le jour
DateD=E9but =3D DateEclat=E9e(1) & "/" & DateEclat=E9e(0)=20
& "/" & DateEclat=E9e(2)

If DateD=E9butString =3D "" Then
Exit Sub
ElseIf Not IsDate(DateD=E9but) Then
MsgBox DateD=E9butString & " n'est pas une date=20
valide"
End If
Loop Until IsDate(DateD=E9but)

Je ne peux utiliser Datevalue car il me prend le format=20
am=E9ricain
J'ai essay=E9 en ajoutant aussi les # mais le format reste=20
toujour am=E9ricain,=20
m=EAme en tapant manuellement une date avec des # dans la=20
ligne Loop Until IsDate(#14/02/2004#) devient Loop Until=20
IsDate(#2/14/2004#) automatiquement

D'avance merci =E0 tous

6 réponses

Avatar
dadda
Bonjour Bernard
Quelque chose comme ça ne marcherait-il pas ?

Sub essai()
x = Format(InputBox("Entrez une date de début sous la
forme jj/mm/aaaa", "changement date"), "dd/mm/yy")
MsgBox x
End Sub

Dadda

-----Message d'origine-----
Bonjour,

j'ai un problème avec les dates dans un inputbox que j'ai
résolu mais dont je pense qu'il y a une meilleure
solution,
Je suis sous W2K et Excel 2000 français, Options
régionales français

Dim DateEclatée
Dim MessageDébut, TitreDébut, DateDébut, DateDébutString
MessageDébut = "Entrez une date de début sous la forme
jj/mm/aaaa"
TitreDébut = "Date de début"
Do
DateDébutString = InputBox(MessageDébut, TitreDébut)
DateEclatée = Split(DateDébutString, "/")

'pour intervertir le mois et le jour
DateDébut = DateEclatée(1) & "/" & DateEclatée(0)
& "/" & DateEclatée(2)

If DateDébutString = "" Then
Exit Sub
ElseIf Not IsDate(DateDébut) Then
MsgBox DateDébutString & " n'est pas une date
valide"
End If
Loop Until IsDate(DateDébut)

Je ne peux utiliser Datevalue car il me prend le format
américain
J'ai essayé en ajoutant aussi les # mais le format reste
toujour américain,
même en tapant manuellement une date avec des # dans la
ligne Loop Until IsDate(#14/02/2004#) devient Loop Until
IsDate(#2/14/2004#) automatiquement

D'avance merci à tous

.



Avatar
Misange
Bonjour,
pour récupérer une date française après une saisie dans une input box :
madateÍate(Inputbox("Quelle date mmjj ?"))

Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta

le 23/07/2004 11:57:
Bonjour,

j'ai un problème avec les dates dans un inputbox que j'ai
résolu mais dont je pense qu'il y a une meilleure
solution,
Je suis sous W2K et Excel 2000 français, Options
régionales français

Dim DateEclatée
Dim MessageDébut, TitreDébut, DateDébut, DateDébutString
MessageDébut = "Entrez une date de début sous la forme
jj/mm/aaaa"
TitreDébut = "Date de début"
Do
DateDébutString = InputBox(MessageDébut, TitreDébut)
DateEclatée = Split(DateDébutString, "/")

'pour intervertir le mois et le jour
DateDébut = DateEclatée(1) & "/" & DateEclatée(0)
& "/" & DateEclatée(2)

If DateDébutString = "" Then
Exit Sub
ElseIf Not IsDate(DateDébut) Then
MsgBox DateDébutString & " n'est pas une date
valide"
End If
Loop Until IsDate(DateDébut)

Je ne peux utiliser Datevalue car il me prend le format
américain
J'ai essayé en ajoutant aussi les # mais le format reste
toujour américain,
même en tapant manuellement une date avec des # dans la
ligne Loop Until IsDate(#14/02/2004#) devient Loop Until
IsDate(#2/14/2004#) automatiquement

D'avance merci à tous



Avatar
dadda
Re-bonjour;

Si on entre par erreur 1/13/04 excel l'interprete 30/1/04.
Y aurait-il moyen de lui faire dire qu'il s'agit d'une
erreur parce que l'année ne peut avoir que 12 mois ?
Merci

dadda
-----Message d'origine-----
Bonjour,
pour récupérer une date française après une saisie dans
une input box :

madateÍate(Inputbox("Quelle date mmjj ?"))

Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta

le 23/07/2004 11:57:
Bonjour,

j'ai un problème avec les dates dans un inputbox que
j'ai


résolu mais dont je pense qu'il y a une meilleure
solution,
Je suis sous W2K et Excel 2000 français, Options
régionales français

Dim DateEclatée
Dim MessageDébut, TitreDébut, DateDébut, DateDébutString
MessageDébut = "Entrez une date de début sous la forme
jj/mm/aaaa"
TitreDébut = "Date de début"
Do
DateDébutString = InputBox(MessageDébut, TitreDébut)
DateEclatée = Split(DateDébutString, "/")

'pour intervertir le mois et le jour
DateDébut = DateEclatée(1) & "/" & DateEclatée(0)
& "/" & DateEclatée(2)

If DateDébutString = "" Then
Exit Sub
ElseIf Not IsDate(DateDébut) Then
MsgBox DateDébutString & " n'est pas une date
valide"
End If
Loop Until IsDate(DateDébut)

Je ne peux utiliser Datevalue car il me prend le format
américain
J'ai essayé en ajoutant aussi les # mais le format
reste


toujour américain,
même en tapant manuellement une date avec des # dans la
ligne Loop Until IsDate(#14/02/2004#) devient Loop
Until


IsDate(#2/14/2004#) automatiquement

D'avance merci à tous

.





Avatar
Merci,
mais hélas cela ne marche pas car si dans l'inputbox je
répond par exemple 31/02/2004
alors madate:00:00 et isdate(madate) me donne true !!!!
si je mets madate as date

cependant si je mets madate as string alors madate = "" et
isdate(madate) me donne false ce qui est mieux mais pas
très élégant

Bernard

-----Message d'origine-----
Bonjour,
pour récupérer une date française après une saisie dans
une input box :

madateÍate(Inputbox("Quelle date mmjj ?"))

Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta

le 23/07/2004 11:57:
Bonjour,

j'ai un problème avec les dates dans un inputbox que
j'ai


résolu mais dont je pense qu'il y a une meilleure
solution,
Je suis sous W2K et Excel 2000 français, Options
régionales français

Dim DateEclatée
Dim MessageDébut, TitreDébut, DateDébut, DateDébutString
MessageDébut = "Entrez une date de début sous la forme
jj/mm/aaaa"
TitreDébut = "Date de début"
Do
DateDébutString = InputBox(MessageDébut, TitreDébut)
DateEclatée = Split(DateDébutString, "/")

'pour intervertir le mois et le jour
DateDébut = DateEclatée(1) & "/" & DateEclatée(0)
& "/" & DateEclatée(2)

If DateDébutString = "" Then
Exit Sub
ElseIf Not IsDate(DateDébut) Then
MsgBox DateDébutString & " n'est pas une date
valide"
End If
Loop Until IsDate(DateDébut)

Je ne peux utiliser Datevalue car il me prend le format
américain
J'ai essayé en ajoutant aussi les # mais le format
reste


toujour américain,
même en tapant manuellement une date avec des # dans la
ligne Loop Until IsDate(#14/02/2004#) devient Loop
Until


IsDate(#2/14/2004#) automatiquement

D'avance merci à tous

.





Avatar
bernard
Merci,
mais hélas cela ne marche pas car si dans l'inputbox je
répond par exemple 31/02/2004
alors madate:00:00 et isdate(madate) me donne true !!!!
si je mets madate as date

cependant si je mets madate as string alors madate = "" et
isdate(madate) me donne false ce qui est mieux mais pas
très élégant

Bernard

-----Message d'origine-----
Bonjour,
pour récupérer une date française après une saisie dans
une input box :

madateÍate(Inputbox("Quelle date mmjj ?"))

Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta

le 23/07/2004 11:57:
Bonjour,

j'ai un problème avec les dates dans un inputbox que
j'ai


résolu mais dont je pense qu'il y a une meilleure
solution,
Je suis sous W2K et Excel 2000 français, Options
régionales français

Dim DateEclatée
Dim MessageDébut, TitreDébut, DateDébut, DateDébutString
MessageDébut = "Entrez une date de début sous la forme
jj/mm/aaaa"
TitreDébut = "Date de début"
Do
DateDébutString = InputBox(MessageDébut, TitreDébut)
DateEclatée = Split(DateDébutString, "/")

'pour intervertir le mois et le jour
DateDébut = DateEclatée(1) & "/" & DateEclatée(0)
& "/" & DateEclatée(2)

If DateDébutString = "" Then
Exit Sub
ElseIf Not IsDate(DateDébut) Then
MsgBox DateDébutString & " n'est pas une date
valide"
End If
Loop Until IsDate(DateDébut)

Je ne peux utiliser Datevalue car il me prend le format
américain
J'ai essayé en ajoutant aussi les # mais le format
reste


toujour américain,
même en tapant manuellement une date avec des # dans la
ligne Loop Until IsDate(#14/02/2004#) devient Loop
Until


IsDate(#2/14/2004#) automatiquement

D'avance merci à tous

.





Avatar
bernard
re-bonjour,

idem si on entre une ou des lettres ou même que des
chiffres qu'il transforme en date valide

-----Message d'origine-----
Re-bonjour;

Si on entre par erreur 1/13/04 excel l'interprete
30/1/04.

Y aurait-il moyen de lui faire dire qu'il s'agit d'une
erreur parce que l'année ne peut avoir que 12 mois ?
Merci

dadda
-----Message d'origine-----
Bonjour,
pour récupérer une date française après une saisie dans
une input box :

madateÍate(Inputbox("Quelle date mmjj ?"))

Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta

le 23/07/2004 11:57:
Bonjour,

j'ai un problème avec les dates dans un inputbox que
j'ai


résolu mais dont je pense qu'il y a une meilleure
solution,
Je suis sous W2K et Excel 2000 français, Options
régionales français

Dim DateEclatée
Dim MessageDébut, TitreDébut, DateDébut,
DateDébutString



MessageDébut = "Entrez une date de début sous la forme
jj/mm/aaaa"
TitreDébut = "Date de début"
Do
DateDébutString = InputBox(MessageDébut,
TitreDébut)



DateEclatée = Split(DateDébutString, "/")

'pour intervertir le mois et le jour
DateDébut = DateEclatée(1) & "/" & DateEclatée(0)
& "/" & DateEclatée(2)

If DateDébutString = "" Then
Exit Sub
ElseIf Not IsDate(DateDébut) Then
MsgBox DateDébutString & " n'est pas une date
valide"
End If
Loop Until IsDate(DateDébut)

Je ne peux utiliser Datevalue car il me prend le
format



américain
J'ai essayé en ajoutant aussi les # mais le format
reste


toujour américain,
même en tapant manuellement une date avec des # dans
la



ligne Loop Until IsDate(#14/02/2004#) devient Loop
Until


IsDate(#2/14/2004#) automatiquement

D'avance merci à tous

.


.