Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Macro changement de date

  • Initiateur de la discussion Initiateur de la discussion Skyna
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Skyna

XLDnaute Occasionnel
Bonjour à tous,

Et oui, encore un nouveau problème....

Est ce que quelqu'un connait une macro qui permettrait de modifier dans les colonnes R, T, V les dates dont l'année est inférieur à l'année d'une certaine cellule.
Par exemple, si la cellule B18 de la feuille 1 est 31-12-2013, est-il possible de remplacer toutes les dates des colonnes R, T et V qui sont par exemple en année 2012 en 01-01-2013??

Merci pour votre aide.
 
Dernière édition:
Re : Macro changement de date

oui, mais si l'année change??
C'est en fonction de l'année de la cellule B18 que toutes les dates inférieures au 01-01 de cette cellule (dans les colonnes R, T, V d'une autre feuille) doivent être modifiées en 01-01-(année B18)
 
Re : Macro changement de date

ah oui pardon j'ai lu en biais... sans fichier difficile d'être précis, notamment sur le nombre de lignes à traiter etc...

En PJ un exemple simpliste que tu peux adapter...

dont voici le code:
Code:
For i = 1 To 11
t = Year(Cells(6, i).Value)

If Year(Cells(6, i).Value) < Year(Range("a1").Value) Then
Cells(6, i).Replace t, "2013"
End If
Next
 

Pièces jointes

Re : Macro changement de date

Merci, mais le problème est que seule l'année change.. En fait je souhaitrais que toutes les cellules ayant une années inférieure à l'année de la cellule A1 (par exemple) se transforment en 1er janvier de l'année de la cellule A1. (De plus si la cellule A1 était sur une autre feuille , cela serait un +....).
 
Dernière édition:
Re : Macro changement de date

c'est encore moi... en fait j'ai un petit problème... Lorsque je veux lancer cette macro depuis mon classeur 1 (par exemple) pour modifier les dates qui sont sur un autre classeur(classeur 2 par exemple), j'ai l'erreur suivante qui apparaît : la méthode range de l'objet global a échoué. et c'est la partie if c.value qui est surlignée... Quelqu'un aurait il une idée svp? Merci
 
Dernière édition:
Re : Macro changement de date

Bonsoir Skyna, 00🙂

pastout suivi, mais pour intervenir sur une feuille et ou un classeur qui n'est pas actif, il faut préciser les objets ciblés sur les différents objets "range" en question :
Code:
Workbooks("classeurx.xls").Sheets("nomfeuille").Range("A1").........

bonne soirée
@+
 
Re : Macro changement de date

Bonsoir Pierrot93

Mon problème est le suivant. J'aimerais faire fonctionner cette macro depuis le classeur1 - feuil1, sur le classeur2 - feuil2 par exemple.

Option Explicit
Sub Date_modifier_si()
Dim c As Range
Dim col As Range
Set col = Range("R:R,T:T,V:V").SpecialCells(xlCellTypeConstants, 23)
For Each c In col
If c.Value <> "" And c.Value < Range("toto") Then c.Value = Range("toto")
'toto = nom d'une cellule avec à l'intérieur 01-01-2013
Next
End Sub


Et merci à doublezero pour son aide.
 
Re : Macro changement de date

Si je fais cela :

Option Explicit
Sub Date_modifier_si()
Dim c As Range
Dim col As Range
Set col = Workbooks("classeur1.xlsx").Sheets("feuil1").Range("R:R,T:T,V:V").SpecialCells(xlCellTypeConstants, 23)
For Each c In col
If c.Value <> "" And c.Value < Range("toto") Then c.Value = Range("toto")
Next
End Sub

J'ai l'erreur suivante : "L'indice n'appartient pas à la sélection"
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
332
  • Question Question
XL 2016 Date
Réponses
6
Affichages
711
Réponses
4
Affichages
274
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…