Couper une chaîne de caractères...?
Bonjours à tous,
Je cherche à supprimer une partie de chaîne de caractères dans la même cellule.
J'y arrive au coup par coup en changeant la cellule (A17) avec le code suivant :
Sub Test()
Dim Valeur As String
Dim Position As Long
Dim Texte1 As String, Texte2 As String
Valeur = InputBox("Quel est le caractere a rechercher ?")
Position = InStr(Range("A17"), Valeur)
If Position > 0 Then
' Texte1 = Mid(Range("A14"), Position, 9 ^ 9)
' MsgBox "Apres avoir supprime tout ce qui est avant le " & Valeur & " : " & Chr(10) & Texte1
Texte2 = Mid(Range("A17"), 1, Position - 2)
' Texte2 = Mid(Range("A14"), 1, Position)
Range("A17") = Texte2
MsgBox "Apres avoir supprime tout ce qui est apres le " & Valeur & " : " & Chr(10) & Texte2
ActiveCell.Offset(0, 9) = Mid(Range("A17"), 1, Position)
' Else
' MsgBox "Le caractere " & Valeur & " n'est pas present dans la chaine de caracteres."
' End If
End Sub
Je voudrais pouvoir le faire dans toute la colonne A sans avoir a changer la cellule manuellement.
Je cherche depuis midi et n'y arrive pas...
Pouvez-vous m'aider SVP...!
Bonjour,
Si j'ai bien compris ...
Un essai ...
Sub Test()
Dim Valeur As String
Dim Position As Long
Dim Texte1 As String, Texte2 As String
Dim DerLig As Long
Dim X As Long
Valeur = InputBox("Quel est le caractere a rechercher ?")
DerLig = Cells(Rows.Count, "A").End(xlUp).Row
For X = 1 To DerLig ' << adapter la première ligne au besoin
Position = InStr(Range("A" & X), Valeur)
If Position > 0 Then
' Texte1 = Mid(Range("A14"), Position, 9 ^ 9)
' MsgBox "Apres avoir supprime tout ce qui est avant le " & Valeur & " : " & Chr(10) & Texte1
Texte2 = Mid(Range("A" & X), 1, Position - 2)
' Texte2 = Mid(Range("A14"), 1, Position)
Range("A" & X) = Texte2
MsgBox "Apres avoir supprime tout ce qui est apres le " & Valeur & " : " & Chr(10) & Texte2
ActiveCell.Offset(0, 9) = Mid(Range("A" & X), 1, Position)
' Else
' MsgBox "Le caractere " & Valeur & " n'est pas present dans la chaine de caracteres."
End If
Next X
End Sub
ric
Bonsoir ric et gmb,
Merci de vous être intéressé à mon problème...
Merci gmb pour ta version, mais elle ne supprime qu'un seul caractère, alors que je voulais supprimer tout ce qui est après le caractère.
Mais je la garde en réserve pour une autre utilisation.
ric, c'est parfait, a force de m'acharner a vouloir adapter la ligne InStr, J'en avais oublié la boucle, J'y ai pensé dans l'après-midi au volant de ma voiture et je me suis traité d'âne...
Ta version fonctionne parfaitement...
Merci encore a tous les deux pour votre aide...