J'ai r=E9cup=E9r=E9 un tableau excel 2002 dans lequel il y a un grand
nombre de cellules d=E9butant par", " (virgule espace). Comment puis-je
enlever ", " (virgule espace) sans pour autant effacer les autres
virgules ou espaces dans la cellule.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Rai
Bonjour,
J'ai récupéré un tableau excel 2002 dans lequel il y a un grand nombre de cellules débutant par", " (virgule espace). Comment puis-je enlever ", " (virgule espace) sans pour autant effacer les autres virgules ou espaces dans la cellule.
Remerciements et sincères salutations.
Christophe
Bonjour,
2 cas de figure :
- soit tu utilises la commande Edition/Remplacer où tu remplace ", " par rien cela t'enlevera les ", " partout mais pas le , ou les espaces seuls ou dans une autre configuration. par contre cela t'enlevera aussi les ", " à l'intérieur de chaines --> "bonjour, il fait..." deviendra "bonjouril fait"
- soit tu passes par une macro. Celle-ci pourrait être Sub effacevirgule() For Each c In ActiveSheet.UsedRange If c = ", " Then c.Clear Next c End Sub
Cela convient-il ?
Cordialement
Rai
Bonjour,
J'ai récupéré un tableau excel 2002 dans lequel il y a un grand
nombre de cellules débutant par", " (virgule espace). Comment puis-je
enlever ", " (virgule espace) sans pour autant effacer les autres
virgules ou espaces dans la cellule.
Remerciements et sincères salutations.
Christophe
Bonjour,
2 cas de figure :
- soit tu utilises la commande Edition/Remplacer
où tu remplace ", " par rien
cela t'enlevera les ", " partout mais pas le , ou les espaces seuls ou
dans une autre configuration.
par contre cela t'enlevera aussi les ", " à l'intérieur de chaines -->
"bonjour, il fait..." deviendra "bonjouril fait"
- soit tu passes par une macro.
Celle-ci pourrait être
Sub effacevirgule()
For Each c In ActiveSheet.UsedRange
If c = ", " Then c.Clear
Next c
End Sub
J'ai récupéré un tableau excel 2002 dans lequel il y a un grand nombre de cellules débutant par", " (virgule espace). Comment puis-je enlever ", " (virgule espace) sans pour autant effacer les autres virgules ou espaces dans la cellule.
Remerciements et sincères salutations.
Christophe
Bonjour,
2 cas de figure :
- soit tu utilises la commande Edition/Remplacer où tu remplace ", " par rien cela t'enlevera les ", " partout mais pas le , ou les espaces seuls ou dans une autre configuration. par contre cela t'enlevera aussi les ", " à l'intérieur de chaines --> "bonjour, il fait..." deviendra "bonjouril fait"
- soit tu passes par une macro. Celle-ci pourrait être Sub effacevirgule() For Each c In ActiveSheet.UsedRange If c = ", " Then c.Clear Next c End Sub
Cela convient-il ?
Cordialement
Rai
Christophe
Merci Rai,
En effet je ne souhaite pas effacer ", " à l'intérieur de chaines mais uniquement lorsque ", " sont les deux premiers caratères de la cellule. Comment modifier ta macro pour que ceci soit pris en compte?
Remerciements.
Christophe
Merci Rai,
En effet je ne souhaite pas effacer ", " à l'intérieur de chaines
mais uniquement lorsque ", " sont les deux premiers caratères de la
cellule.
Comment modifier ta macro pour que ceci soit pris en compte?
En effet je ne souhaite pas effacer ", " à l'intérieur de chaines mais uniquement lorsque ", " sont les deux premiers caratères de la cellule. Comment modifier ta macro pour que ceci soit pris en compte?
Remerciements.
Christophe
JB
Bonjour,
Sélectionner le champ puis:
Sub essai For Each c In Selection If Left(c.Value, 2) = ", " Then c.Value = Mid(c.Value, 3) Next c End sub
Cordialement JBJB
Bonjour,
Sélectionner le champ puis:
Sub essai
For Each c In Selection
If Left(c.Value, 2) = ", " Then c.Value = Mid(c.Value, 3)
Next c
End sub
Sub essai For Each c In Selection If Left(c.Value, 2) = ", " Then c.Value = Mid(c.Value, 3) Next c End sub
Cordialement JBJB
Ardus Petus
Sub effacevirgule() For Each c In ActiveSheet.UsedRange If Left(c.Value, 2) = ", " Then _ c.Value = Right(c.Value, Len(c.Value) - 2) Next c End Sub
Cordialement, -- AP
"Christophe" a écrit dans le message de news: Merci Rai,
En effet je ne souhaite pas effacer ", " à l'intérieur de chaines mais uniquement lorsque ", " sont les deux premiers caratères de la cellule. Comment modifier ta macro pour que ceci soit pris en compte?
Remerciements.
Christophe
Sub effacevirgule()
For Each c In ActiveSheet.UsedRange
If Left(c.Value, 2) = ", " Then _
c.Value = Right(c.Value, Len(c.Value) - 2)
Next c
End Sub
Cordialement,
--
AP
"Christophe" <cjoly@mail.doc.gov> a écrit dans le message de
news:1142685244.864008.200070@i40g2000cwc.googlegroups.com...
Merci Rai,
En effet je ne souhaite pas effacer ", " à l'intérieur de chaines
mais uniquement lorsque ", " sont les deux premiers caratères de la
cellule.
Comment modifier ta macro pour que ceci soit pris en compte?
Sub effacevirgule() For Each c In ActiveSheet.UsedRange If Left(c.Value, 2) = ", " Then _ c.Value = Right(c.Value, Len(c.Value) - 2) Next c End Sub
Cordialement, -- AP
"Christophe" a écrit dans le message de news: Merci Rai,
En effet je ne souhaite pas effacer ", " à l'intérieur de chaines mais uniquement lorsque ", " sont les deux premiers caratères de la cellule. Comment modifier ta macro pour que ceci soit pris en compte?
Oupf, je n'avais pas vu que la recherche se fasisait sur les deux premiers carctères
Option Explicit Sub efface_premier_caractere() ' efface le premier carctère si c'est une
Dim cel As Range Dim leftv As String 'premier carctère à gauche Dim Lenc As Integer ' nbre de carctères dans la châine Dim newCel As String ' nouvelle chaîne Dim caract As String ' caractère à trouver Dim lenCaract As Integer
caract = ",," ' définit le catctère à trouver. ici "," lenCaract = Len(caract) 'nombre de caractères dans caract
For Each cel In ActiveSheet.UsedRange cel = Trim(cel) ' supprime les espaces avant et après Lenc = Len(cel) ' longueur de cel leftv = Left(cel, lenCaract) ' trouve le premier carctère de cel If leftv = caract Then ' test le premier carctère à trouver newCel = Right(cel, (Lenc - lenCaract)) ' récupère la chaine sans le premier carcatère cel.Activate ' active cel en écriture cel = newCel ' copie la nouvelle chaine End If newCel = "" Next cel End Sub
Bonjour,
J'ai récupéré un tableau excel 2002 dans lequel il y a un grand nombre de cellules débutant par", " (virgule espace). Comment puis-je enlever ", " (virgule espace) sans pour autant effacer les autres virgules ou espaces dans la cellule.
Remerciements et sincères salutations.
Christophe
Oupf, je n'avais pas vu que la recherche se fasisait sur les deux
premiers carctères
Option Explicit
Sub efface_premier_caractere() ' efface le premier carctère si c'est
une
Dim cel As Range
Dim leftv As String 'premier carctère à gauche
Dim Lenc As Integer ' nbre de carctères dans la châine
Dim newCel As String ' nouvelle chaîne
Dim caract As String ' caractère à trouver
Dim lenCaract As Integer
caract = ",," ' définit le catctère à trouver. ici ","
lenCaract = Len(caract) 'nombre de caractères dans caract
For Each cel In ActiveSheet.UsedRange
cel = Trim(cel) ' supprime les espaces avant et
après
Lenc = Len(cel) ' longueur de cel
leftv = Left(cel, lenCaract) ' trouve le premier
carctère de cel
If leftv = caract Then ' test le premier
carctère à trouver
newCel = Right(cel, (Lenc - lenCaract)) '
récupère la chaine sans le premier carcatère
cel.Activate ' active cel en
écriture
cel = newCel ' copie la nouvelle chaine
End If
newCel = ""
Next cel
End Sub
Bonjour,
J'ai récupéré un tableau excel 2002 dans lequel il y a un grand
nombre de cellules débutant par", " (virgule espace). Comment puis-je
enlever ", " (virgule espace) sans pour autant effacer les autres
virgules ou espaces dans la cellule.
Oupf, je n'avais pas vu que la recherche se fasisait sur les deux premiers carctères
Option Explicit Sub efface_premier_caractere() ' efface le premier carctère si c'est une
Dim cel As Range Dim leftv As String 'premier carctère à gauche Dim Lenc As Integer ' nbre de carctères dans la châine Dim newCel As String ' nouvelle chaîne Dim caract As String ' caractère à trouver Dim lenCaract As Integer
caract = ",," ' définit le catctère à trouver. ici "," lenCaract = Len(caract) 'nombre de caractères dans caract
For Each cel In ActiveSheet.UsedRange cel = Trim(cel) ' supprime les espaces avant et après Lenc = Len(cel) ' longueur de cel leftv = Left(cel, lenCaract) ' trouve le premier carctère de cel If leftv = caract Then ' test le premier carctère à trouver newCel = Right(cel, (Lenc - lenCaract)) ' récupère la chaine sans le premier carcatère cel.Activate ' active cel en écriture cel = newCel ' copie la nouvelle chaine End If newCel = "" Next cel End Sub
Bonjour,
J'ai récupéré un tableau excel 2002 dans lequel il y a un grand nombre de cellules débutant par", " (virgule espace). Comment puis-je enlever ", " (virgule espace) sans pour autant effacer les autres virgules ou espaces dans la cellule.