Décomposer une phrase pour que chaques mots soient sur une ligne différentes ds Excel

excel12

XLDnaute Nouveau
Bonjour à tous,

1er Question
J'ai beaucoup de phrases écrites en chinois.
Je souhaite que chaque caractère soit sur une ligne différente dans une même colonne dans Excel.

Voici un exemple de phrase qui est dans ma première cellule dans Excel.
你好我学习汉语。

Je veux avoir un caractère par ligne dans la même colonne pour obtenir rapidement:









2e Question

Ensuite, j'ai la traduction de mes phrases chinoises en français.
Je veux que chaque mot soit chacun sur une ligne différente dans Excel.

Bonjour j'étudie le chinois.

Je veux obtenir:
Bonjour
j'étudie
le
chinois.

J'ai pensé utiliser Word avec la recherche spécialiser. En demandant à Word de trouver les espaces et en les remplaçant par un «retour de chariot» (un «enter»). Mais je n'ai pas comment écrire pour que Word fasse bien le travail.

Ensuite, je pourrai de Word copier et coller dans Excel.

Merci pour votre aide!!!
 

david84

XLDnaute Barbatruc
Re : Décomposer une phrase pour que chaques mots soient sur une ligne différentes ds

Bonjour,
pour la 1ère question
Code:
=STXT(A$1;LIGNE(1:1);1)
à tirer vers le bas (le mot est placé en A1).
Pour la 2ème question tu peux simplement utiliser l'outil de donnée Convertir (onglet Données/Outils de données) en choisissant "Largeur fixe" à l'étape 1.
A+
 

excel12

XLDnaute Nouveau
Re : Décomposer une phrase pour que chaques mots soient sur une ligne différentes ds

Merci David84,

Pour la première question, tout fonctionne parfaitement!

Pour la deuxième question, c'est presque réussi. En fait, ton idée est excellente pour séparer les mots. Par contre, ils sont séparés dans des colonnes différentes. Ce que je souhaite est qu'ils puissent être séparés exactement comme tu as fait, mais chaque mot sur une ligne différent.

J'ai essayé en combinant ton idée pour la question 1 après avoir fait la 2, mais je n'ai pas réussi à faire comme je voulais.

Si tu trouves une idée, n'hésite pas à me dire.

Merci beaucoup pour la solution 1!!!! C'est génial!
 

david84

XLDnaute Barbatruc
Re : Décomposer une phrase pour que chaques mots soient sur une ligne différentes ds

Re
toujours la phrase en A1 :
Code:
=SIERREUR(STXT("/"&SUBSTITUE(A$1;" ";"/")&"/";CHERCHE("/";SUBSTITUE(" "&A$1&" ";" ";"/";LIGNES($1:1)))+1;CHERCHE("/";SUBSTITUE(" "&A$1&" ";" ";"/";LIGNES($1:2)))-CHERCHE("/";SUBSTITUE(" "&A$1&" ";" ";"/";LIGNES($1:1)))-1);"")
se placer en A2 par exemple et tirer la formule vers le bas.
A+
 

mécano41

XLDnaute Accro
Re : Décomposer une phrase pour que chaques mots soient sur une ligne différentes ds

Bonjour,

Sinon, en VBA, avec la phrase en A1, le résultat est en B3:B...

Code:
Option Explicit

Sub essai()
Dim T
T = Split(Range("A1").Value, " ")
Range("B3").Resize(UBound(T) + 1, 1) = WorksheetFunction.Transpose(T)
End Sub

Cordialement

EDIT : la même mais pas besoin de lancer le code

Code:
Sub Worksheet_Change(ByVal cible As Range)
Dim T
If Not Intersect(cible, Range("A1")) Is Nothing Then
Application.EnableEvents = False
T = Split(Range("A1").Value, " ")
Range("B3").Resize(UBound(T) + 1, 1) = WorksheetFunction.Transpose(T)
Application.EnableEvents = True
End If
End Sub
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 211
Messages
2 086 284
Membres
103 170
dernier inscrit
HASSEN@45