Modifier le contenu d'une colonne

Bonsoir, j'ai un fichier avec une colonne contenant des dates, sauf qu'il y'a des erreurs de saisie, et je voudrai mofifier la date sans ajouter une autre colonne, c'est à dire à chaque fois que la date commence par un 23/01 la modifier et mettre 24/01 à la place. exemple si date 23/01/1985 alors remplacer par 24/01/1985, 23/01/1998 remplacer par 24/01/1998.....

Merci.

16modif-date.zip (6.78 Ko)

Bonjour

Bienvenue sur le Forum

Une méthode simple et rapide

Dans une cellule quelconque, tu tapes 1 (Le chiffre 1)

Tu copies cette cellule

Tu sélectionnes tes dates en colonne A

et Collage Spécial et là, tu cliques sur "Addition"

cordialement

Bonjour,

J'ai essayé de faire un petit code mais ça ne fonctionne pas, sachant que le fichier exel que je met sur le site est tres simplifié:

Sub Macro1()

Dim DerLig As Long, Ligne As Long

Application.ScreenUpdating = False

Application.Calculation = xlCalculationManual

With Worksheets("Feuil1")

DerLig = .Range("AB" & Rows.Count).End(xlUp).Row

For Ligne = DerLig To 2 Step -1

If .Range("A" & Ligne).Value = "=23/01*" Then .Range("A" & Ligne).Value = "=24/01*"

Next Ligne

End With

Application.Calculation = xlCalculationAutomatic

End Sub


Sinon j'ai essayé avec le code suuivant: ça marche quand il s'agit de mettre le résultat dans une autre colonne mais pas de modifier la colonne meme.

Sub fe()

With Worksheets("Feuil1")

Dim i As Long

i = .Range("A" & Rows.Count).End(xlUp).Row

.Range("A2").Formula = "=IF(LEFT(RC[-1],5)=""23/01"",CONCATENATE(""24/01"",RIGHT(RC[-1],5)),RC)"

.Range("A2").AutoFill Destination:=.Range("AB2:AB" & i), Type:=xlFillDefault

End With

End Sub

Merci

Bonjour

Sub Modifie()
Dim MaCellule As Range, Mois As Integer, Jour As Integer, Année As Integer, LaDate As Date
For Each MaCellule In Range("A2", Range("A2").End(xlDown))
If IsDate(MaCellule) Then MaCellule.Value = MaCellule.Value + 1
If Not IsDate(MaCellule) Then
Jour = Left(MaCellule, 2) * 1
Mois = Mid(MaCellule, 4, 2) * 1
Année = Right(MaCellule, 4) * 1
LaDate = DateSerial(Année, Mois, Jour)
MaCellule.Value = LaDate + 1
End If
Next MaCellule
End Sub

Le 29 février 1998 n'existant pas, la date prise en compte est le jour suivant le 28 février, soit le 1er mars qui augmenté de 1 donne le 2 mars.

Cordialement

12modif-date.zip (12.69 Ko)
Rechercher des sujets similaires à "modifier contenu colonne"