Edition Remplacer Espace début de cellule

MJ13

XLDnaute Barbatruc
Bonjour à tous

Il me semble qu'on peut supprimer un espace en début de cellule avec Ctrl+H (ou edition remplacer), mais je me trompe peut-être :confused:

Ou sinon, comment remplacer les caractères génériques :confused:.

Je ne voudrais pas passer par du VBA ou des formules :).

Merci d'avance.
 
Dernière édition:

hoerwind

XLDnaute Barbatruc
Re : Edition Remplacer Espace début de cellule

Bonjour MJ,

Pour les espaces, pas de problème, Ctrl+H peut les supprimer, mais cela les supprimes tous !
Donc si il y en a plusieurs dans la chaine de caractères, cela pose à nouveau problème.
Essaie plutôt le fonction SUPPRESPACE dans une colonne voisine.

Pour les caractères génériques il faut les faire précéder par un ~(tilde).
 

piga25

XLDnaute Barbatruc
Re : Edition Remplacer Espace début de cellule

Bonjour MJ13

Efectivement avec Ctrl+H (ou edition remplacer) il est possible de remplacer un espace ou un caractère générique en début de cellule.
Dans le champ rechercher mettre le caractère souhaité et uniquement celui là puis dans le champ remplacer par ne rien mettre et enfin lancer la recherche
 
Dernière édition:

MJ13

XLDnaute Barbatruc
Re : Edition Remplacer Espace début de cellule

Bonjour Hoerwind, Piga

Merci pour vos solutions mais j'ai l'impression que ce n'est pas possible ou j'ai pas trouvé :confused:

Par contre la fonction SUPPRESPACE dans une colonne voisine semble être OK (je pensais naïvement que cela supprimait tous les espaces, mais en fait cela supprime les espaces en début et fin de cellule, c'est intéressant :eek:).

Donc, merci Hoerwind de m'avoir éclairé :).
 
Dernière édition:

JNP

XLDnaute Barbatruc
Re : Edition Remplacer Espace début de cellule

Bonjour le fil :),
Je suis désolé Michel, mais le Rechercher/Remplacer d'Excel est moins puissant que celui de Word qui permet d'utiliser des RegExp pour effectuer ce type de remplacement :eek:...
Alors à moins de copier/coller sous Word, de faire les remplacements sous Word et de re copier/coller sous Excel, je ne penses pas que tu trouveras une solution NI formule, NI VBA :rolleyes:...
Bon courage :cool:
 

MJ13

XLDnaute Barbatruc
Re : Edition Remplacer Espace début de cellule

Bonjour jean-noël

Alors à moins de copier/coller sous Word, de faire les remplacements sous Word et de re copier/coller sous Excel, je ne penses pas que tu trouveras une solution NI formule, NI VBA ...

Merci, mais la, ça me fait un peu peur :eek:.

Du coup, j'ai plonger vers le VBA commme ceci :):

Si ce n'est pas un espace, il suffira de copier le caractère entre " " après le or.

Code:
Sub Supprime_Espace_Debut_Cellule()
For Each cell In Selection
If Left(cell.Value, 1) = " " Or Left(cell.Value, 1) = " " Then cell.Value = Mid(cell.Value, 2, (Len(cell.Value) - 1))
Next
End Sub
Sub Supprime_Espace_Fin_Cellule()
For Each cell In Selection
If Right(cell.Value, 1) = " " Or Right(cell.Value, 1) = " " Then cell.Value = Mid(cell.Value, 1, (Len(cell.Value) - 1))
Next
End Sub
 
Dernière édition:

YANN-56

XLDnaute Barbatruc
Re : Edition Remplacer Espace début de cellule

Bonsoir à Michel, aux éminents participants, et à ceux qui passeront par ici,

Je prends un risque en venant jouer dans la cour des grands, mais je n'ai pas pu m'empêcher.

Comme le sujet m'intéressait, j'ai tenté le truc joint.

"Aie" ..... "Mais! J'ai rien fait! :eek:

Amicalement, et aussi pour ma gouverne afin que j'avance un peu.

Yann
 

Pièces jointes

  • SUP_ESPACES.xls
    26.5 KB · Affichages: 78
  • SUP_ESPACES.xls
    26.5 KB · Affichages: 84
  • SUP_ESPACES.xls
    26.5 KB · Affichages: 81
Dernière édition:

MJ13

XLDnaute Barbatruc
Re : Edition Remplacer Espace début de cellule

Bonjour Yann

Merci pour ta particpation, Super :).

Sinon si c'est un caractère de tpe 160 on peut mettre chr(160) à la place du " " alors qu'un espace classique est chr(32) .

Bon, je Like. Comme cela je le retrouverai plus facilement :eek:.
 

JNP

XLDnaute Barbatruc
Re : Edition Remplacer Espace début de cellule

Re :),
Je prends un risque en venant jouer dans la cour des grands, mais je n'ai pas pu m'empêcher.
Y a pas de grands, pas de petits :rolleyes:, mais oui, il y a un risque :p...
Michel avait dis "sans VBA" ;)...
Si on y a droit
Code:
Sub Nettoyage()
Dim Cellule As Range
Application.ScreenUpdating = False
For Each Cellule In Selection
Cellule = Trim(Cellule)
Next
Application.ScreenUpdating = True
End Sub
nettoyera toute la sélection :p...
Bonne soirée :cool:
 

YANN-56

XLDnaute Barbatruc
Re : Edition Remplacer Espace début de cellule

Re MJ13, JNP, et à ceux qui passeront par là,

Michel: Merci pour le compliment :), mais tu vois; il y a toujours mieux à faire,
et c'est un réel bonheur avec VBA et des XLDNautes comme JNP qui interviennent.

LTrim, RTrim et Trim, fonctions
Renvoie une valeur de type Variant (String) contenant une copie d'une chaîne en supprimant
les espaces de gauche (LTrim), les espaces de droite (RTrim) ou les deux (Trim).

JNP :): Quand j'ai parlé de "Grands" c'est en faisant allusion à ceux qui connaissent ces outils.
Il y a aussi ceux qui ont les capacités intellectuelles pour savoir les adapter aux cas qui se présentent.

Je ne suis pas d'une modestie débordante, mais je dois admettre mes limites.
(Il y a aussi autres raisons dont je ne veux plus entendre parler)

En tous les cas je pense que Michel sera d'accord avec moi pour te remercier vivement pour ton aide.
Suivant ta première intervention, il avait admis le quasi impératif de passer par une macro.

Finalement, il aura eu une réponse efficace, et j'aurai encore appris quelque chose en ayant ramené ma fraise.....
Encore Merci à toi.

Dixit ma signature en bleu.

Amicalement, en joignant une bribe de l''évolution.

Yann
 

Pièces jointes

  • SUP_ESPACES_1.xls
    24.5 KB · Affichages: 61
Dernière édition:

JNP

XLDnaute Barbatruc
Re : Edition Remplacer Espace début de cellule

Re :),
ou je pensais que cela servait à calculer des trimestres :eek:
Si à chaque fois que j'utilise un Trim, j'ai droit à un trimestre en plus, je vais vite pouvoir prendre ma retraite :p !
T'inquiètes pas, je dirais quand même pas que c'est tous les jours, mais entre une fois toutes les semaines ou une fois par mois, j'apprends une nouvelle commande de VBA ou une nouvelle syntaxe :rolleyes:...
La dernière en date, hier, ICI :eek:...
Figures toi qu'on peut se passer d'OffSet en utilisant des indices comme ceci par exemple
Code:
Range("A1")(2, 3).Select
mais, attention, vu que c'est de l'indice, c'est équivalent à
Code:
Range("A1").Offset(1, 2).Select
puisque OffSet travaille sur de l'intervalle (tant de ligne et de colonnes) alors que l'indice travaille sur les cellules
Code:
(1, 1) = OffSet(0, 0)
De plus,
Code:
Range("A1:A12")(2, 3).Select
renverras le même résultat que
Code:
Range("A1")(2, 3).Select
vu que la cellule de référence reste la même, la première en haut à gauche, alors que
Code:
Range("A1:A12").Offset(1, 2).Select
lui sélectionnera la plage A2:A13 ;)...
Vous comprenez pourquoi j'ai prévu une armoire de Doliprane pour le chantier :p...
Bonne journée :cool:
 

Fo_rum

XLDnaute Accro
Re : Edition Remplacer Espace début de cellule

Bonjour,

petite précision :
Ltrim pour supprimer les espaces du début,
Rtrim pour supprimer ceux de la fin (on peut avoir besoin de garder les espaces du début)
Trim pour supprimer les 2 bouts mais pas les intermédiaires !
 

Pièces jointes

  • LTrimRTrim&Trim.xls
    30 KB · Affichages: 69

YANN-56

XLDnaute Barbatruc
Re : Edition Remplacer Espace début de cellule

Bonjour JNP, Fo_rum, et à ceux qui passeront par ici,

Merci Fo_rum d'avoir compléter le test des "Trim".
Encore des procédures où l'on va moins trimer.:) :) :)

JNP: de mon coté j'aime bien utiliser ceci car je ne suis pas copain avec "Offset"

Code:
Range(Cells(2, 1), Cells(13, 3)).Select

Ou, en supposant des données en amont:

Code:
PREMIERE_LIGNE = 2
DERNIERE_LIGNE = 13
PREMIERE_COLONNE = 1
DERNIERE_COLONNE = 3
' -----------------------------------------------
Range(Cells(PREMIERE_LIGNE, PREMIERE_COLONNE), Cells(DERNIERE_LIGNE, DERNIERE_COLONNE)).Select

Je pense qu'ainsi il sera plus souple de déterminer la plage à sélectionner.

Amicalement,

Yann
 
Dernière édition:

JNP

XLDnaute Barbatruc
Re : Edition Remplacer Espace début de cellule

Re :),
JNP: de mon coté j'aime bien utiliser ceci car je ne suis pas copain avec "Offset"
Je ne l'aimais pas non plus :p...
Mais là où il est très pratique (entre autre), c'est dans les fonctions car c'est une action relative :rolleyes:...
Pour équivaloir à un INDEX/EQUIV, un Find.OffSet(0, 1) est beaucoup plus simple que d'utiliser un Cells(Find.Row, Find.Column + 1) :p...
Mais bon, c'est juste mon avis :rolleyes:...
Amicalement :cool:
 

Discussions similaires

Réponses
2
Affichages
164

Statistiques des forums

Discussions
312 215
Messages
2 086 329
Membres
103 185
dernier inscrit
salhit