Dates dans excel
lolo14
-
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'ai un petit soucis en VBA. Je crée une macro qui resemble à celà :
Sub Date1B()
Range("I9").Value = InputBox("Veuillez entrer la date de la 1ere journée:", "1ere journée")
If Cells(9, 9) = "" Then
Range("I9:L46").Select
Selection.ClearContents
Range("O9:R46").Select
Selection.ClearContents
Range("AA1").Select
ActiveSheet.Protect
[End Sub]
MsgBox " Vous avez abandonné l'initialisation des nouvelles dates" & Chr(10) & _
" ou omis de spécifier la 1ere date !" & Chr(10) & _
" Les nouveelles dates ne sont pas enregistrées.", vbCritical, "Abandon"
Else
Date2B
End If
End Sub
Elle me permet de taper une date pour que celle-ci s'affiche dans la cellule I9.
Tout celà fonctionne parfaitement sauf si je tape une date avec un jour entre 1 et 12.
par exemple, si je tape 06/08/2011 dans ma MsgBox, la date qui s'affiche dans la cellule I9 devient 08/06/2011. Le jour et le mois sont inversés. Par contre, si je tape une date style 13/05/2011, pas de soucis.
J'ai essayé de triturer le format de la cellule, rien n'y fait.
Un cerveau supérieur peut-il m'aider svp?
Cordialement
J'ai un petit soucis en VBA. Je crée une macro qui resemble à celà :
Sub Date1B()
Range("I9").Value = InputBox("Veuillez entrer la date de la 1ere journée:", "1ere journée")
If Cells(9, 9) = "" Then
Range("I9:L46").Select
Selection.ClearContents
Range("O9:R46").Select
Selection.ClearContents
Range("AA1").Select
ActiveSheet.Protect
[End Sub]
MsgBox " Vous avez abandonné l'initialisation des nouvelles dates" & Chr(10) & _
" ou omis de spécifier la 1ere date !" & Chr(10) & _
" Les nouveelles dates ne sont pas enregistrées.", vbCritical, "Abandon"
Else
Date2B
End If
End Sub
Elle me permet de taper une date pour que celle-ci s'affiche dans la cellule I9.
Tout celà fonctionne parfaitement sauf si je tape une date avec un jour entre 1 et 12.
par exemple, si je tape 06/08/2011 dans ma MsgBox, la date qui s'affiche dans la cellule I9 devient 08/06/2011. Le jour et le mois sont inversés. Par contre, si je tape une date style 13/05/2011, pas de soucis.
J'ai essayé de triturer le format de la cellule, rien n'y fait.
Un cerveau supérieur peut-il m'aider svp?
Cordialement
A voir également:
- Dates dans excel
- Nombre de jours entre deux dates excel - Guide
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Si ou excel - Guide
- Déplacer colonne excel - Guide
3 réponses
Bonjour
pas trop compris ce que tu veux faire
tu demande de remplir une date en I9 et ensuite tu déclenches une action si I9 est vide (d'ailleurs, pourquoi passer en cells(9,9)=range("I9") ?)
bon:
tu as intérêt à imposer un format (comme sur un site web: si tu tapes 56, tu auras le 25/02/1900...)
voilà une procédure qui te restitue au format français
pour nettoyer tes 2 zones un code + bref et + rapide
Range("I9:I46,O9:O46").ClearContents
pas trop compris ce que tu veux faire
tu demande de remplir une date en I9 et ensuite tu déclenches une action si I9 est vide (d'ailleurs, pourquoi passer en cells(9,9)=range("I9") ?)
bon:
tu as intérêt à imposer un format (comme sur un site web: si tu tapes 56, tu auras le 25/02/1900...)
voilà une procédure qui te restitue au format français
Dim valeur As String
Dim jour As Date
valeur = InputBox("Veuillez entrer la date de la 1ere journée" & vbLf & _
"sous la forme jj/mm/aaaa:", "1ere journée")
If Not valeur Like "##/##/####" Then GoTo erreur
jour = valeur
Range("I9") = jour
'......ton code
Exit Sub
erreur:
MsgBox "saisie incorrecte", vbCritical
End Sub
pour nettoyer tes 2 zones un code + bref et + rapide
Range("I9:I46,O9:O46").ClearContents
Bonjour,
Essaie :
Essaie :
Sub Date1B()
Dim D As Date
D = InputBox("Veuillez entrer la date de la 1ere journée:", "1ere journée")
Range("I9").Value = D
...
Bonjour Patrice
Merci beaucoup d'avoir pris le temps de me répondre.
Ca marche à merveille.
Je me suis lancé à corps perdu et j'ai zappé la fonction DIM -))
Encore mille mercis
Laurent
Merci beaucoup d'avoir pris le temps de me répondre.
Ca marche à merveille.
Je me suis lancé à corps perdu et j'ai zappé la fonction DIM -))
Encore mille mercis
Laurent