Commment supprimer des blancs ou espaces sur excel

Résolu
dieuf -  
 dieuf -
Bonjour,
j'importe une base de données et il me donne les montants sous le format suivants:
12 56 87 et je veux savoir si ya moyen de l'avoir comme 125687 sans le faire manuellement car j'ai une base de 1M d'obs

4 réponses

  1. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
     
    Bonjour

    sélectionnez le champ
    touche ctrl et h
    remplacer: taper un blanc
    par ne mettez rien
    remplacer tout

    A noter que quelquefois, le transfert de données ne crée pas un blanc, mais un caractère insécable
    Le plus sur est donc;
    de copier un espace dans une des cellules
    d'afficher la fenêtre de remplacement
    de coller la copie en haut et rien en bas

    crdlmnt
    crdlmnt
    1
    1. dieuf
       
      Bonjour,
      je viens de faire la premier procedure ca marche mais sur les montant ou l'espace ce trouve avant le les chiffres exple :espace 152 26 ça ne marche pas et aussi il ne tient pas comptes des virgules


      cdlt
      0
    2. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
       
      Ah

      Le principe supprime systématiquement tous les blancs. S'il en reste c'est que ça n'en est pas
      essayez alors successivement les deux cas proposés (donc supprimer les blancs, copier une de ceux qui restent et recommencer l'opération avec le collage)

      et par ailleurs dans un texte du genre de votre message initial, soit 12 56 87 on la met où, la virgule?

      Si jamais il reste des blancs après la 1° opération, essayez avec la seconde de remplacer le caractère copié par une virgule, on ne sait jamais;

      crdlmnt
      0
  2. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
     
    Bonjour,

    en vba faire Alt F11 pour accéder et mettre dans la feuille concernée ce code:

    Option Explicit
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Value = "" Then Exit Sub
    Target.Value = Replace(Target.Value, " ", "")'supprime les espaces
    End Sub
    --
    @+ Le Pivert
    0
  3. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonjour,

    Si tu as 1M (million ?) de lignes il ne faut pas utiliser l'inscription celllule par cellule m^me en utilisant l'indispensable screenupdating= false qui fige l''écran car cette méthode est extrêmement longue
    il faut utiliser les variables tableaux

    Option Explicit
    Const Col As String = "A" 'colonne de travail
    '-----
    Sub supp_espaces()
    Dim Derlig As Long, T_yy(), Idx As Long

    Application.ScreenUpdating = False
    Derlig = Columns(Col).Find("*", , , , , xlPrevious).Row
    T_yy = Application.Transpose(Range(Cells(1, Col), Cells(Derlig, Col)))
    For Idx = 1 To UBound(T_yy)
    T_yy(Idx) = Replace(T_yy(Idx), " ", "")
    Next
    Cells(1, Col).Resize(UBound(T_yy), 1) = Application.Transpose(T_yy)
    End Sub


    Michel
    0
  4. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Apparemment, Dieuf ne sait pas dire merci malgré que 3 bénévoles ont essayé de l'aider

    Chapeau! mais on ne t'oubliera pas si tu repasses ici
    0
    1. dieuf
       
      Desolé mon cher michel c'est juste que j'etais deborder par le taf mais encore merci a tous Mieux vaut tard que jamais
      0