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

Probleme de date

4 réponses
Avatar
magic-dd
bonjour

dans une procedure permettant de sauvegarder une feuille en donnant le nom =
de la feuille avec la date inscrite dans un inputbox, le probleme est que s=
i je met une date genre 04/09/14, mon onglet va se nommer 09 avril 2014

j'ai bien essay=E9 le cdate mais =E7a n'a pas l'air de fonctionner

voici le code

Sub CopieFeuille()

If MsgBox("Etes-vous certain de vouloir proc=E9der " & Chr(10) & "=E0 la s=
auvegarde de vos donn=E9es ?", vbYesNo, "Demande de confirmation") =3D vbY=
es Then
=20
Else: Exit Sub
End If
'creation de la sauvegarde
Sheets("C160").Select 'selectionne la flotte concernee

nom =3D InputBox("Inscrire la date de mise =E0 jour au format jj/mm/aa", "D=
ate de mise =E0 jour")
Range("N5").Value =3D nom 'affichage d'une boite de dialogue pour inscrir=
e la date de mise =E0 jour
[n5] =3D CDate(n5)

=20
Application.ScreenUpdating =3D False

Range("a1:S100").Copy 'copie des donn=E9es de la flotte concern=E9e
Sheets.Add After:=3DSheets(Sheets.Count) 'cr=E9ation d'une feuille posi=
tionn=E9e =E0 la fin des autres onglets
Range("a1").Select
Selection.PasteSpecial Paste:=3DxlPasteValues, Operation:=3DxlNone, Ski=
pBlanks _
:=3DFalse, Transpose:=3DFalse
Selection.PasteSpecial Paste:=3DxlPasteFormats, Operation:=3DxlNone, _
SkipBlanks:=3DFalse, Transpose:=3DFalse 'collage des donn=E9es dans=
cette nouvelle feuille
=20
ActiveSheet.Range("a1").Select
Application.CutCopyMode =3D False
Range("a1").Select
With ActiveSheet
.Name =3D "C160 - " & Format(.Range("N5"), "mm dd yyyy") 'renommage de =
la feuille avec la flotte, le mois et l'ann=E9e sauvegad=E9e
End With
Sheets("Tampon C160").Visible =3D True

Columns("A:S").Select
Selection.Copy
Sheets("Tampon C160").Select
Columns("A:A").Select
ActiveSheet.Paste
ActiveSheet.Range("a1").Select
Application.CutCopyMode =3D False
=20
Sheets("Tampon C160").Visible =3D False
Range("a1").Select
Sheets("C160").Select

Range("N5,B8:E40,H8:i40,L8:M40,N8:O40").Select ' effacement des donn=E9es d=
e la feuille de l'a=E9ronef concern=E9
=20
Selection.ClearContents
=20
=20
=20
Application.CutCopyMode =3D False
Range("a1").Select
Application.ScreenUpdating =3D True

MsgBox "Vos donn=E9es mensuelles ont bien =E9t=E9 sauvegard=E9es.", , "Conf=
irmation de sauvergarde"
End Sub

4 réponses

Avatar
magic-dd
bon en fait je viens de trouver

il fallait faire

nom = InputBox("Inscrire la date de mise à jour au format jj/mm/aa", "D ate de mise à jour")
Range("N5") = nom 'affichage d'une boite de dialogue pour inscrire la d ate de mise à jour
maj = CDate(nom)
Range("N5") = maj
Avatar
MichD
Bonjour,

La manière dont tu saisis la date est dangereuse. Que se passe-t-il si
l'usager entre un mauvais format de date et que la procédure l'accepte?

Je te suggère ceci. Exécute la procédure du module1.

http://cjoint.com/?DItqzMSPpdZ
Avatar
magic-dd
Le vendredi 19 septembre 2014 16:25:07 UTC+2, MichD a écrit :
Bonjour,



En effet MichD, ce que tu propose est du professionnel

pour mon cas, est ce qu'il est possible de faire une verif sur l'inputbox, qu'il soit bien au format jj/mm/yy ?

merci

La mani�re dont tu saisis la date est dangereuse. Que se passe-t- il si

l'usager entre un mauvais format de date et que la proc�dure l'ac cepte?



Je te sugg�re ceci. Ex�cute la proc�dure du modul e1.



http://cjoint.com/?DItqzMSPpdZ



e
Avatar
MichD
Vérifier une date dans un inputbox, voici un fichier exemple :
http://cjoint.com/?DIttEbJPSja