1 votes

Espace indésirable dans les URL dans Excel 2010

J'ai une liste de 23 000 URL dans une feuille Excel, mais il semble qu'elles contiennent des espaces supplémentaires, ce qui les invalide.

J'ai essayé de trouver et remplacer et Excel ne reconnaît pas qu'il y a un espace supplémentaire dans la cellule.

Voici un exemple de la façon dont j'ai collé l'URL dans la cellule.

/searchresult.asp/store/store/tskay/08REWA248

mais c'est en fait ce qui se trouve dans la cellule :

/searchresult.asp/store/store/
            tskay/08REWA248

et l'url est répartie sur deux lignes.

Je peux m'assurer que le texte n'est pas enveloppé dans la cellule et tout semble être réuni, sur une seule ligne, mais si je modifie la cellule de quelque façon que ce soit, il est à nouveau réparti sur plusieurs cellules.

J'ai essayé de coller dans le bloc-notes et j'obtiens l'URL suivante :

/searchresult.asp/
            store/store/tskay/08REWA248FE/

En ce qui concerne les guillemets et les espaces, lorsque je les trouve et les remplace, puis que je recolle l'url propre dans Excel, l'ancienne url avec les espaces revient directement.

J'ai également essayé de transformer le texte en colonnes pour séparer l'URL, puis de la concaténer à nouveau, mais à chaque fois, l'ancienne URL revient directement avec les espaces supplémentaires.

Si je clique dans la cellule et que je supprime l'espace, tout va bien, mais avec 23 000 URL, je ne peux pas faire cela pour toutes et je ne trouve rien en ligne pour m'aider !

Comment puis-je réparer cela ?

0voto

Excellll Points 12428

Votre texte comporte des retours de chariot ou des sauts de ligne. Vous pouvez les supprimer en une seule fois grâce à une simple procédure VBA.

Veillez à sauvegarder votre feuille avant de suivre les étapes ci-dessous. (Vous voudrez disposer d'une sauvegarde au cas où cette opération provoquerait un effet inattendu et altérerait vos données).

Tout d'abord, sélectionnez la colonne entière d'URLs. Ensuite, ouvrez l'éditeur VBA en appuyant sur Alt + F11 et aller à Insert >> Module . Collez le code suivant dans le champ de texte qui s'ouvre.

Sub FixURL()
Dim r As Range, URLs() As Variant
Dim rgx As Object
Set r = Selection
'Load contents of selection into an array
URLs = r.Value
'Set up a regular expression object for finding and replacing the line breaks and spaces
Set rgx = CreateObject("vbscript.regexp")
rgx.Global = True
rgx.Pattern = "\r?\n[ \t]+"
'Remove problem text for each URL
For i = LBound(URLs, 1) To UBound(URLs, 1)
    URLs(i, 1) = rgx.Replace(URLs(i, 1), "")
Next i
'Print cleaned up URLs back to sheet
r.Value = URLs
End Sub

Appuyez sur F5 pour exécuter le code. Cela devrait supprimer les sauts de ligne et les espaces supplémentaires pour toutes vos URL.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X