[ VBA - EXCEL ] : supprimer les 3 derniers caratères si la cellule contient ":"

airsage

XLDnaute Junior
Bonjour,

J'ai une colonne avec des dates de différents format du type "02/04/2015:00" ou "11/06/2015".

J'ai bien le code VBA pour supprimer les 3 derniers caractères,

Sub SupprCaract()
Dim Nc, Cel As Range

For Each Cel In Range("A2:A10000")
Cel.Value = Trim(Cel.Value) 'supprime espaces
Nc = Len(Cel) 'compte les caractères
Cel.Value = Left(Cel, Nc - 3)
Next Cel

End Sub

mais je ne trouve pas la condition pour lui dire que si il ne trouve pas le caractère ":", il ne faut rien supprimer.

Merci par avance pour votre aide.

Cordialement
 

pierrejean

XLDnaute Barbatruc
Re : [ VBA - EXCEL ] : supprimer les 3 derniers caratères si la cellule contient ":"

Bonjour airsage

A tester:
Sub SupprCaract()
Dim Nc, Cel As Range

For Each Cel In Range("A2:A10000")
if instr(Cel.value,":")<> 0 then
Cel.Value = Trim(Cel.Value) 'supprime espaces
Nc = Len(Cel) 'compte les caractères
Cel.Value = Left(Cel, Nc - 3)
end if
Next Cel

End Sub
 

Hieu

XLDnaute Impliqué
Re : [ VBA - EXCEL ] : supprimer les 3 derniers caratères si la cellule contient ":"

Salut,

un test :
Code:
Sub SupprCaract()
Dim Nc, Cel As Range


For Each Cel In Range("A2:A10000")
On Error Resume Next
Cel.Value = Trim(Cel.Value) 'supprime espaces
Nc = Len(Cel) 'compte les caractères
If IsNumeric(WorksheetFunction.Search(":", Range("a2"))) Then Cel.Value = Left(Cel, Nc - 3)
Next Cel


End Sub

++
 

Discussions similaires

Statistiques des forums

Discussions
315 132
Messages
2 116 584
Membres
112 797
dernier inscrit
zouzou50