Macro : Supprimer les premiers caractères d'une chaine

roidurif

XLDnaute Occasionnel
Bonjour,

Comment à partir d'une macro je peux retirer pour chacune des données les premiers caractères d'une chaine jusqu'au n° jours de dates.

Pour exemple, je souhaite pour chacunes des cellule n' avoir que : 31 mars 2011 10:21 au lieu de => é : jeudi 31 mars 2011 10:21.

Attention, quelque fois il peut y avoir des espaces blanc en début ou fin de la chaine, donc à retirer aussi.

voici comme exemple les données à traiter :
é : jeudi 31 mars 2011 10:21
é : jeudi 31 mars 2011 11:39
é : jeudi 31 mars 2011 12:09
mercredi 30 mars 2011 15:50
vendredi 18 mars 2011 08:12
é : mardi 29 mars 2011 18:09
é : jeudi 31 mars 2011 16:22
mercredi 30 mars 2011 14:39
mercredi 30 mars 2011 15:02
é : jeudi 31 mars 2011 10:21
é : jeudi 31 mars 2011 11:39
é : jeudi 31 mars 2011 12:09
mercredi 30 mars 2011 15:50
mercredi 30 mars 2011 15:50
vendredi 18 mars 2011 08:12

merci pour votre aide.
 

Efgé

XLDnaute Barbatruc
Re : Macro : Supprimer les premiers caractères d'une chaine

Bonjour roidurif, Bonjour Tototiti :),
Un petit fichier évite toujours de devoir le faire pour les tests....
Une proposition par macro, les données de A1 à A...
Le résultat en colonne B
VB:
Private Sub CommandButton1_Click()
For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
    Temp = Trim(Cells(i, 1))
    For j = 1 To Len(Temp)
        If Mid(Temp, j, 1) Like "#" Then
            Cells(i, 2) = Mid(Temp, j, Len(Temp))
            Exit For
        End If
    Next j
Next i
End Sub
Cordialement
 

roidurif

XLDnaute Occasionnel
Re : Macro : Supprimer les premiers caractères d'une chaine

Bonjour,

Merci Efgé.
Par contre comment supprimé les retours chariots
J'ai ajuster en fonction de mon fichier, par contre j'ai integré la ligne pour supprimer les retours chariots,

malheureusement, cela ne fonctionne pas.

Pouvez-m'indiquer où je me trompe?

Merci

Code:
Sub test
For x = 2 To Cells(Rows.Count, 4).End(xlUp).Row
    Temp = Trim(Cells(x, 4))
    For j = 1 To Len(Temp)
        If Mid(Temp, j, 1) Like "#" Then
            Cells(x, 4) = Mid(Temp, j, Len(Temp))
            Cells(x, 4).Value = Replace(Cells(x, 4), vbCrLf,"")
            Exit For
        End If
    Next j
Next x
End sub
[\CODE]
 

Efgé

XLDnaute Barbatruc
Re : Macro : Supprimer les premiers caractères d'une chaine

Re
toujours sans fichier...
Essai plutot comme ça :
VB:
Sub test()
For x = 2 To Cells(Rows.Count, 4).End(xlUp).Row
    Temp = Trim(Cells(x, 4))
    Temp = Replace(Temp, Chr(10), "")
    For j = 1 To Len(Temp)
        If Mid(Temp, j, 1) Like "#" Then
            Cells(x, 4) = Mid(Temp, j, Len(Temp))
        Exit For
        End If
    Next j
Next x
End Sub
Cordialement

Edit Bonjour Pierrot
 

Discussions similaires

Réponses
2
Affichages
515

Statistiques des forums

Discussions
312 196
Messages
2 086 099
Membres
103 116
dernier inscrit
kutobi87