Changement de date en auto ou en manuel

Résolu/Fermé
BABAR07 - 3 sept. 2010 à 15:34
 BABAR07 - 4 sept. 2010 à 16:48
Bonjour,
je suis un peu dans l'embarras, voila mon prob
en A1 j'ai 03/09/1954, je sollicite votre savoir pour que seulement l'année change donc 03/09/2011 avec une macro ou une formule, je n'y arrive pas.
GRAND MERCI A CEUX QUI PEUVENT SOULAGER MON PETIT CERVEAU DE BIENTOT 64 ANS



A voir également:

4 réponses

pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
3 sept. 2010 à 15:51
Bonjour,
Vous avez en A1 une date et voulez avoir, en B1 par exemple, cette même date, 57 ans plus tard...
En B1 :
=DATE(ANNEE(A1)+57;MOIS(A1);JOUR(A1))
0
je te remercie pour ta réponse mais peut-on l' inclure dans une maccro,
merci de tout coeur
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
4 sept. 2010 à 12:32
SAlut,
Par macro, avec une InputBox demandant à l'utilisateur de combien d'années il veux décaler la date :
Sub Chgmt_Annee()
Dim result As String
result = InputBox("Saisir un nombre d'année :", "De combien d'années souhaitez vous décaler la date?")
ActiveCell.Offset(0, 1).Value = CDate(Day(ActiveCell) & "/" & Month(ActiveCell) & "/" & Year(ActiveCell) + CInt(result))
End Sub

Sélectionner au préalable la cellule contenant la date, ALT+F8, choisir "Chgmt_Annee" et cliquer sur Exécuter...
0
cousinhub29 Messages postés 938 Date d'inscription mardi 10 août 2010 Statut Membre Dernière intervention 28 septembre 2024 341
4 sept. 2010 à 12:58
Bonjour,

Une variante...

Qui ajoute autant d'années que désirées à toutes les cellules de la colonne A, tout en vérifiant que result est bien numérique, et que les cellules concernées sont bien des dates :

Sub Chgmt_Annee()
Dim result As String
Dim Cel As Range
Do
result = InputBox("Saisir un nombre d'année :", "De combien d'années souhaitez vous décaler les dates?")
If result = "" Then Exit Sub
Loop While Not IsNumeric(result)
For Each Cel In Range("A1:A" & [A65000].End(xlUp).Row)
    If IsDate(Cel) Then Cel.Offset(0, 1).Value = DateAdd("yyyy", result, Cel)
Next Cel
End Sub


Bonne journée
0
MERCI A TOUS CEUX QUI M'ONT REPONDUS SI SYMPATIQUEMENT, CELA ME RETIRE UNE EPINE DU PIED COMME ON DIT PAR CHEZ NOUS AMICALEMENT
0