Decouper le contenu d'une cellule en fonction d'un saut de ligne

Le
hedup
Bonjour,

J'ai le problème suivant que je voudrais automatiser.
J'ai plein de cellules qui contiennent des informations toutes séparées pas
un saut de ligne dans la cellule (Alt + enter).
Je voudrais "deconcatener" ces cellules en prenant le critères de saut de
ligne.
Ex: j'ai dans une cellule cell (i,j)="a b c d" (les blancs étant ici les
saut de lignes de la cellule), et je voudrais récupéré:
cell (i,j+1)="a"
cell (i,j+2)="b"
cell (i,j+3)="c"
cell (i,j+4)="d"

Si quelqu'un pouvait m'aider.
Merci d'avance
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
JB
Le #4678631
Bonjour,

Dans un module:

Function Decoupe(champ As Range)
temp = Split(champ, Chr(10))
Decoupe = Application.Transpose(temp)
End Function

Dans le tableur:

Sélectionner A2:A5

Þcoupe(A1)
Valider avec Maj+Ctrl+Entrée

http://cjoint.com/?iFkTSE53xI

JB
http://boisgontierjacques.free.fr/

On 31 août, 10:36, hedup
Bonjour,

J'ai le problème suivant que je voudrais automatiser.
J'ai plein de cellules qui contiennent des informations toutes séparé es pas
un saut de ligne dans la cellule (Alt + enter).
Je voudrais "deconcatener" ces cellules en prenant le critères de saut de
ligne.
Ex: j'ai dans une cellule cell (i,j)="a b c d" (les blancs étant ici les
saut de lignes de la cellule), et je voudrais récupéré:
cell (i,j+1)="a"
cell (i,j+2)="b"
cell (i,j+3)="c"
cell (i,j+4)="d"

Si quelqu'un pouvait m'aider.
Merci d'avance


hedup
Le #4678571
Merci de la réponse,

Question (d'un non expert):
Où dois-je définir la fonction? Via une macro?

Merci
HD


Bonjour,

Dans un module:

Function Decoupe(champ As Range)
temp = Split(champ, Chr(10))
Decoupe = Application.Transpose(temp)
End Function

Dans le tableur:

Sélectionner A2:A5

Þcoupe(A1)
Valider avec Maj+Ctrl+Entrée

http://cjoint.com/?iFkTSE53xI

JB
http://boisgontierjacques.free.fr/

On 31 août, 10:36, hedup
Bonjour,

J'ai le problème suivant que je voudrais automatiser.
J'ai plein de cellules qui contiennent des informations toutes séparées pas
un saut de ligne dans la cellule (Alt + enter).
Je voudrais "deconcatener" ces cellules en prenant le critères de saut de
ligne.
Ex: j'ai dans une cellule cell (i,j)="a b c d" (les blancs étant ici les
saut de lignes de la cellule), et je voudrais récupéré:
cell (i,j+1)="a"
cell (i,j+2)="b"
cell (i,j+3)="c"
cell (i,j+4)="d"

Si quelqu'un pouvait m'aider.
Merci d'avance







JB
Le #4678481
Alt+F11
Insertion/module

JB

On 31 août, 11:22, hedup
Merci de la réponse,

Question (d'un non expert):
Où dois-je définir la fonction? Via une macro?

Merci
HD




Bonjour,

Dans un module:

Function Decoupe(champ As Range)
temp = Split(champ, Chr(10))
Decoupe = Application.Transpose(temp)
End Function

Dans le tableur:

Sélectionner A2:A5

Þcoupe(A1)
Valider avec Maj+Ctrl+Entrée

http://cjoint.com/?iFkTSE53xI

JB
http://boisgontierjacques.free.fr/

On 31 août, 10:36, hedup
Bonjour,

J'ai le problème suivant que je voudrais automatiser.
J'ai plein de cellules qui contiennent des informations toutes sépa rées pas
un saut de ligne dans la cellule (Alt + enter).
Je voudrais "deconcatener" ces cellules en prenant le critères de s aut de
ligne.
Ex: j'ai dans une cellule cell (i,j)="a b c d" (les blancs étant ici les
saut de lignes de la cellule), et je voudrais récupéré:
cell (i,j+1)="a"
cell (i,j+2)="b"
cell (i,j+3)="c"
cell (i,j+4)="d"

Si quelqu'un pouvait m'aider.
Merci d'avance- Masquer le texte des messages précédents -



- Afficher le texte des messages précédents -




JB
Le #4678461
Variiante:

For Each c In Range("A1", [A65000].End(xlUp))
temp = Split(c, Chr(10))
c.Offset(0, 1).Resize(1, UBound(temp) + 1) = temp
Next c

http://cjoint.com/?iFomSvoFe6

JB

On 31 août, 11:22, hedup
Merci de la réponse,

Question (d'un non expert):
Où dois-je définir la fonction? Via une macro?

Merci
HD




Bonjour,

Dans un module:

Function Decoupe(champ As Range)
temp = Split(champ, Chr(10))
Decoupe = Application.Transpose(temp)
End Function

Dans le tableur:

Sélectionner A2:A5

Þcoupe(A1)
Valider avec Maj+Ctrl+Entrée

http://cjoint.com/?iFkTSE53xI

JB
http://boisgontierjacques.free.fr/

On 31 août, 10:36, hedup
Bonjour,

J'ai le problème suivant que je voudrais automatiser.
J'ai plein de cellules qui contiennent des informations toutes sépa rées pas
un saut de ligne dans la cellule (Alt + enter).
Je voudrais "deconcatener" ces cellules en prenant le critères de s aut de
ligne.
Ex: j'ai dans une cellule cell (i,j)="a b c d" (les blancs étant ici les
saut de lignes de la cellule), et je voudrais récupéré:
cell (i,j+1)="a"
cell (i,j+2)="b"
cell (i,j+3)="c"
cell (i,j+4)="d"

Si quelqu'un pouvait m'aider.
Merci d'avance- Masquer le texte des messages précédents -



- Afficher le texte des messages précédents -




hedup
Le #4678441
Bonjour,

J'ai eu plus de mal avec la première solution.
Par contre, la variante est parfaite.
Merci beaucoup.

HD


Variiante:

For Each c In Range("A1", [A65000].End(xlUp))
temp = Split(c, Chr(10))
c.Offset(0, 1).Resize(1, UBound(temp) + 1) = temp
Next c

http://cjoint.com/?iFomSvoFe6

JB

On 31 août, 11:22, hedup
Merci de la réponse,

Question (d'un non expert):
Où dois-je définir la fonction? Via une macro?

Merci
HD




Bonjour,

Dans un module:

Function Decoupe(champ As Range)
temp = Split(champ, Chr(10))
Decoupe = Application.Transpose(temp)
End Function

Dans le tableur:

Sélectionner A2:A5

Þcoupe(A1)
Valider avec Maj+Ctrl+Entrée

http://cjoint.com/?iFkTSE53xI

JB
http://boisgontierjacques.free.fr/

On 31 août, 10:36, hedup
Bonjour,

J'ai le problème suivant que je voudrais automatiser.
J'ai plein de cellules qui contiennent des informations toutes séparées pas
un saut de ligne dans la cellule (Alt + enter).
Je voudrais "deconcatener" ces cellules en prenant le critères de saut de
ligne.
Ex: j'ai dans une cellule cell (i,j)="a b c d" (les blancs étant ici les
saut de lignes de la cellule), et je voudrais récupéré:
cell (i,j+1)="a"
cell (i,j+2)="b"
cell (i,j+3)="c"
cell (i,j+4)="d"

Si quelqu'un pouvait m'aider.
Merci d'avance- Masquer le texte des messages précédents -



- Afficher le texte des messages précédents -









Publicité
Poster une réponse
Anonyme