Suite à importation au format texte, plusieures cellules ont leur contenu
qui commence par un espace (qui n'a rien à y faire).
Sachant qu'elles contiennent d'autres espaces, je souhaite faire disparaitre
les espaces en début de chaines dans toute la feuille.
Existe-t-il une solution ?
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
michdenis
Bonjour Job,
Es-tu certain que c'est un espace crée par la barre d'espacement (caractère 32 du code Ascii) ? Lors de l'importation, il y a souvent un caractère ressemblant celui cité précédemment mais dont le caractère ascii est 160.
pour tester une cellule dont la présence est détectée, utilise ceci :
=CODE(GAUCHE(A10;1))
Cela va te donner le code Ascii de "L'ESPACE"
Si c'est 160 , utilise la fenêtre Recherche - Remplacer du menu Édition .
Dans Rechercher, tu insères : 0160 en conservant la touche Alt de gauche de la barre d'espacement enfoncé lors de la saisie. Tu laisses vides la case "Remplace par".
Tu peux aussi utiliser une procédure de ce type :
'-------------------------------------- Sub EnleverEspace()
Dim Rg As Range, Tbl As Variant Dim A As Long, B As Integer, D As Integer
On Error Resume Next With ActiveSheet Set Rg = .UsedRange aa = Rg.Address End With If Rg Is Nothing Then Exit Sub
For Each are In Rg.Areas Tbl = are For A = 1 To UBound(Tbl, 1) For B = 1 To UBound(Tbl, 2) If Tbl(A, B) <> "" Then D = Asc(Left(Tbl(A, B), 1)) If D = 32 Or D = 160 Then Tbl(A, B) = Right(Tbl(A, B), Len(Tbl(A, B)) - 1) End If End If Next Next are.Value = Tbl Next
End Sub '--------------------------------------
Salutations!
"Job" a écrit dans le message de news:cj8vvm$ Suite à importation au format texte, plusieures cellules ont leur contenu qui commence par un espace (qui n'a rien à y faire). Sachant qu'elles contiennent d'autres espaces, je souhaite faire disparaitre les espaces en début de chaines dans toute la feuille. Existe-t-il une solution ?
Merci
Bonjour Job,
Es-tu certain que c'est un espace crée par la barre d'espacement (caractère 32 du code Ascii) ? Lors de l'importation, il y a
souvent un caractère ressemblant celui cité précédemment mais dont le caractère ascii est 160.
pour tester une cellule dont la présence est détectée, utilise ceci :
=CODE(GAUCHE(A10;1))
Cela va te donner le code Ascii de "L'ESPACE"
Si c'est 160 , utilise la fenêtre Recherche - Remplacer du menu Édition .
Dans Rechercher, tu insères : 0160 en conservant la touche Alt de gauche de la barre d'espacement enfoncé lors de la saisie.
Tu laisses vides la case "Remplace par".
Tu peux aussi utiliser une procédure de ce type :
'--------------------------------------
Sub EnleverEspace()
Dim Rg As Range, Tbl As Variant
Dim A As Long, B As Integer, D As Integer
On Error Resume Next
With ActiveSheet
Set Rg = .UsedRange
aa = Rg.Address
End With
If Rg Is Nothing Then Exit Sub
For Each are In Rg.Areas
Tbl = are
For A = 1 To UBound(Tbl, 1)
For B = 1 To UBound(Tbl, 2)
If Tbl(A, B) <> "" Then
D = Asc(Left(Tbl(A, B), 1))
If D = 32 Or D = 160 Then
Tbl(A, B) = Right(Tbl(A, B), Len(Tbl(A, B)) - 1)
End If
End If
Next
Next
are.Value = Tbl
Next
End Sub
'--------------------------------------
Salutations!
"Job" <job@job.com> a écrit dans le message de news:cj8vvm$a2f1@news.rd.francetelecom.fr...
Suite à importation au format texte, plusieures cellules ont leur contenu
qui commence par un espace (qui n'a rien à y faire).
Sachant qu'elles contiennent d'autres espaces, je souhaite faire disparaitre
les espaces en début de chaines dans toute la feuille.
Existe-t-il une solution ?
Es-tu certain que c'est un espace crée par la barre d'espacement (caractère 32 du code Ascii) ? Lors de l'importation, il y a souvent un caractère ressemblant celui cité précédemment mais dont le caractère ascii est 160.
pour tester une cellule dont la présence est détectée, utilise ceci :
=CODE(GAUCHE(A10;1))
Cela va te donner le code Ascii de "L'ESPACE"
Si c'est 160 , utilise la fenêtre Recherche - Remplacer du menu Édition .
Dans Rechercher, tu insères : 0160 en conservant la touche Alt de gauche de la barre d'espacement enfoncé lors de la saisie. Tu laisses vides la case "Remplace par".
Tu peux aussi utiliser une procédure de ce type :
'-------------------------------------- Sub EnleverEspace()
Dim Rg As Range, Tbl As Variant Dim A As Long, B As Integer, D As Integer
On Error Resume Next With ActiveSheet Set Rg = .UsedRange aa = Rg.Address End With If Rg Is Nothing Then Exit Sub
For Each are In Rg.Areas Tbl = are For A = 1 To UBound(Tbl, 1) For B = 1 To UBound(Tbl, 2) If Tbl(A, B) <> "" Then D = Asc(Left(Tbl(A, B), 1)) If D = 32 Or D = 160 Then Tbl(A, B) = Right(Tbl(A, B), Len(Tbl(A, B)) - 1) End If End If Next Next are.Value = Tbl Next
End Sub '--------------------------------------
Salutations!
"Job" a écrit dans le message de news:cj8vvm$ Suite à importation au format texte, plusieures cellules ont leur contenu qui commence par un espace (qui n'a rien à y faire). Sachant qu'elles contiennent d'autres espaces, je souhaite faire disparaitre les espaces en début de chaines dans toute la feuille. Existe-t-il une solution ?
Merci
Gafish
Bonjour,
Tu as la fonction "Supprespace" qui permet de supprimer les espaces superflus. Sinon si tu es sur qu'il n'y a qu'un caractère, et à chaque fois, tu peux utiliser la fonction Droite avec la longueur du texte -1
Arnaud
"Job" a écrit dans le message de news:cj8vvm$
Suite à importation au format texte, plusieures cellules ont leur contenu qui commence par un espace (qui n'a rien à y faire). Sachant qu'elles contiennent d'autres espaces, je souhaite faire disparaitre
les espaces en début de chaines dans toute la feuille. Existe-t-il une solution ?
Merci
Bonjour,
Tu as la fonction "Supprespace" qui permet de supprimer les espaces
superflus.
Sinon si tu es sur qu'il n'y a qu'un caractère, et à chaque fois, tu peux
utiliser la fonction Droite avec la longueur du texte -1
Arnaud
"Job" <job@job.com> a écrit dans le message de
news:cj8vvm$a2f1@news.rd.francetelecom.fr...
Suite à importation au format texte, plusieures cellules ont leur contenu
qui commence par un espace (qui n'a rien à y faire).
Sachant qu'elles contiennent d'autres espaces, je souhaite faire
disparaitre
les espaces en début de chaines dans toute la feuille.
Existe-t-il une solution ?
Tu as la fonction "Supprespace" qui permet de supprimer les espaces superflus. Sinon si tu es sur qu'il n'y a qu'un caractère, et à chaque fois, tu peux utiliser la fonction Droite avec la longueur du texte -1
Arnaud
"Job" a écrit dans le message de news:cj8vvm$
Suite à importation au format texte, plusieures cellules ont leur contenu qui commence par un espace (qui n'a rien à y faire). Sachant qu'elles contiennent d'autres espaces, je souhaite faire disparaitre
les espaces en début de chaines dans toute la feuille. Existe-t-il une solution ?
Merci
Job
Je resterai toujours épaté par votre disponibilité (gratuite) et vos connaissances
Je resterai toujours épaté par votre disponibilité (gratuite) et vos
connaissances