Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

plusieurs valeurs dans cellule

6 réponses
Avatar
j
Bonjour,

Voila ce que j'assaye de faire et j'y arrive pas et je sais si c'est meme
possible !!!

J'explique de façon synthétique sur un exemple court, l'adaptation se fera
si possible.

J'ai une base de donnée avec plusieurs lignes.
Dans les cellules de la colonne B, et dans une cellule on peut avoir
plusieurs infos qui sont de la forme
J. Toto
B. Martin
C. Tata
ces valeurs sont séparées par "renvoyer a la ligne automatiquement pour une
meilleure vision

Il en colonne C une valeur action 001 (par exemple)

Je souhaiterai dans une feuille dans un tableau que l'on retrouve
des lignes ou on a respectivement :

A B
Ligne 01 J. Toto 001
Ligne 02 B. Martin 001
Ligne 03 C. Tata 001


et ainsi de suite

Merci

6 réponses

Avatar
isabelle
bonjour ,

ce n,est pas très clair,

si tu peut déposer ton fichier ici :

http://www.cjoint.com
ou ici,
http://www.cijoint.fr/

et reviens ici, donner le lien de téléchargement que le site va générer.
nous pourrons alors le télécharger.

ps/ mets dans ce fichier le résultat attendu

isabelle



Le 2011-03-04 07:07, a écrit :
Bonjour,

Voila ce que j'assaye de faire et j'y arrive pas et je sais si c'est meme
possible !!!

J'explique de façon synthétique sur un exemple court, l'adaptation se fera
si possible.

J'ai une base de donnée avec plusieurs lignes.
Dans les cellules de la colonne B, et dans une cellule on peut avoir
plusieurs infos qui sont de la forme
J. Toto
B. Martin
C. Tata
ces valeurs sont séparées par "renvoyer a la ligne automatiquement pour une
meilleure vision

Il en colonne C une valeur action 001 (par exemple)

Je souhaiterai dans une feuille dans un tableau que l'on retrouve
des lignes ou on a respectivement :

A B
Ligne 01 J. Toto 001
Ligne 02 B. Martin 001
Ligne 03 C. Tata 001


et ainsi de suite

Merci



Avatar
Jean-Claude
Bonjour,

si j'ai bien compris, peut-être avec une macro du genre :

Sub Eclater()
r1 = 2 ' ligne de départ de la feuille origine
r2 = 2 ' ligne de départ de la feuille cible
While Sheets("Feuil1").Cells(r1, 2).Value <> ""
t = Split(Sheets("Feuil1").Cells(r1, 2).Value, vbLf)
For Each v In t
Sheets("Feuil2").Cells(r2, 1).Value = v
Sheets("Feuil2").Cells(r2, 2).Value = Sheets("Feuil1").Cells(r1,
3).Value
r2 = r2 + 1
Next
r1 = r1 + 1
Wend
End Sub

Cf : http://cjoint.com/?1depepVOcPR pour un exemple.

Cordialement,
Jean-Claude
Avatar
j
Merci
Je vais tester et je reviens vous donner des infos
Cordialement

"Jean-Claude" a écrit dans le message de news:
4d70f1c3$0$7698$
Bonjour,

si j'ai bien compris, peut-être avec une macro du genre :

Sub Eclater()
r1 = 2 ' ligne de départ de la feuille origine
r2 = 2 ' ligne de départ de la feuille cible
While Sheets("Feuil1").Cells(r1, 2).Value <> ""
t = Split(Sheets("Feuil1").Cells(r1, 2).Value, vbLf)
For Each v In t
Sheets("Feuil2").Cells(r2, 1).Value = v
Sheets("Feuil2").Cells(r2, 2).Value = Sheets("Feuil1").Cells(r1,
3).Value
r2 = r2 + 1
Next
r1 = r1 + 1
Wend
End Sub

Cf : http://cjoint.com/?1depepVOcPR pour un exemple.

Cordialement,
Jean-Claude




Avatar
j
Bonjour

J'ai mis un fichier en exemple de ce que je souhaite

En feuille "Base" les données origine
En feuille "Tableau" le résultat attendu

Bien sur j'ai fait cela en manuel
L'objectif etant d'optimisé en automatique via formule ou vba
j'ai aussi simplifie

Merci
Voici le lien
http://cjoint.com/?1dguSXXoquM


Cordialement


"isabelle" a écrit dans le message de news:
ikqpla$1hn$
bonjour ,

ce n,est pas très clair,

si tu peut déposer ton fichier ici :

http://www.cjoint.com
ou ici,
http://www.cijoint.fr/

et reviens ici, donner le lien de téléchargement que le site va générer.
nous pourrons alors le télécharger.

ps/ mets dans ce fichier le résultat attendu

isabelle



Le 2011-03-04 07:07, a écrit :
Bonjour,

Voila ce que j'assaye de faire et j'y arrive pas et je sais si c'est meme
possible !!!

J'explique de façon synthétique sur un exemple court, l'adaptation se
fera
si possible.

J'ai une base de donnée avec plusieurs lignes.
Dans les cellules de la colonne B, et dans une cellule on peut avoir
plusieurs infos qui sont de la forme
J. Toto
B. Martin
C. Tata
ces valeurs sont séparées par "renvoyer a la ligne automatiquement pour
une
meilleure vision

Il en colonne C une valeur action 001 (par exemple)

Je souhaiterai dans une feuille dans un tableau que l'on retrouve
des lignes ou on a respectivement :

A B
Ligne 01 J. Toto 001
Ligne 02 B. Martin 001
Ligne 03 C. Tata 001


et ainsi de suite

Merci



Avatar
isabelle
bonjour ,

dit moi si c'est ok,

Sub Macro1()
Dim w As Integer, i As Integer, y As Integer, q As Integer, h As Integer, n
w = 1
With Sheets("Base")
For i = 2 To .Range("A65536").End(xlUp).Row
n = Split(.Cells(i, 2), vbLf)
For y = LBound(n) To UBound(n)
q = .Cells(i, 1) + 1
If IsError(Application.Match(n(y),
Sheets("Tableau").Range("A:A"), 0)) Then
w = w + 1
Sheets("Tableau").Cells(w, 1) = n(y)
Sheets("Tableau").Cells(1, q).Value = "Action" & .Cells(i, 1)
Sheets("Tableau").Cells(w, q).Value = "x"
Else
h = Application.Match(n(y), Sheets("Tableau").Range("A:A"), 0)
Sheets("Tableau").Cells(1, q).Value = "Action" & .Cells(i, 1)
Sheets("Tableau").Cells(h, q).Value = "x"
End If
Next
Next
End With
End Sub

isabelle

Le 2011-03-06 14:51, a écrit :
Bonjour

J'ai mis un fichier en exemple de ce que je souhaite

En feuille "Base" les données origine
En feuille "Tableau" le résultat attendu

Bien sur j'ai fait cela en manuel
L'objectif etant d'optimisé en automatique via formule ou vba
j'ai aussi simplifie

Merci
Voici le lien
http://cjoint.com/?1dguSXXoquM


Cordialement


"isabelle" a écrit dans le message de news:
ikqpla$1hn$

bonjour ,

ce n,est pas très clair,

si tu peut déposer ton fichier ici :

http://www.cjoint.com
ou ici,
http://www.cijoint.fr/

et reviens ici, donner le lien de téléchargement que le site va générer.
nous pourrons alors le télécharger.

ps/ mets dans ce fichier le résultat attendu

isabelle



Le 2011-03-04 07:07, a écrit :

Bonjour,

Voila ce que j'assaye de faire et j'y arrive pas et je sais si c'est meme
possible !!!

J'explique de façon synthétique sur un exemple court, l'adaptation se
fera
si possible.

J'ai une base de donnée avec plusieurs lignes.
Dans les cellules de la colonne B, et dans une cellule on peut avoir
plusieurs infos qui sont de la forme
J. Toto
B. Martin
C. Tata
ces valeurs sont séparées par "renvoyer a la ligne automatiquement pour
une
meilleure vision

Il en colonne C une valeur action 001 (par exemple)

Je souhaiterai dans une feuille dans un tableau que l'on retrouve
des lignes ou on a respectivement :

A B
Ligne 01 J. Toto 001
Ligne 02 B. Martin 001
Ligne 03 C. Tata 001


et ainsi de suite

Merci










Avatar
j
Merci Isa de cette réponse aussi rapide
Je teste cela dès demain matin en essayant de bien comprendre pour pouvoir
l'adapter
car ce que j'ai transmis n'est qu'un exemple tres simplifié
J'ai surtout bien besoin de comprendre ta macro pour ensuite l'adapter

Merci et grand merci déjà
Je reviens vers vous dès mes premiers résultats

Bien a vous


"isabelle" a écrit dans le message de news:
il0ub4$lia$
bonjour ,

dit moi si c'est ok,

Sub Macro1()
Dim w As Integer, i As Integer, y As Integer, q As Integer, h As Integer,
n
w = 1
With Sheets("Base")
For i = 2 To .Range("A65536").End(xlUp).Row
n = Split(.Cells(i, 2), vbLf)
For y = LBound(n) To UBound(n)
q = .Cells(i, 1) + 1
If IsError(Application.Match(n(y), Sheets("Tableau").Range("A:A"),
0)) Then
w = w + 1
Sheets("Tableau").Cells(w, 1) = n(y)
Sheets("Tableau").Cells(1, q).Value = "Action" & .Cells(i, 1)
Sheets("Tableau").Cells(w, q).Value = "x"
Else
h = Application.Match(n(y), Sheets("Tableau").Range("A:A"), 0)
Sheets("Tableau").Cells(1, q).Value = "Action" & .Cells(i, 1)
Sheets("Tableau").Cells(h, q).Value = "x"
End If
Next
Next
End With
End Sub

isabelle

Le 2011-03-06 14:51, a écrit :
Bonjour

J'ai mis un fichier en exemple de ce que je souhaite

En feuille "Base" les données origine
En feuille "Tableau" le résultat attendu

Bien sur j'ai fait cela en manuel
L'objectif etant d'optimisé en automatique via formule ou vba
j'ai aussi simplifie

Merci
Voici le lien
http://cjoint.com/?1dguSXXoquM


Cordialement


"isabelle" a écrit dans le message de news:
ikqpla$1hn$

bonjour ,

ce n,est pas très clair,

si tu peut déposer ton fichier ici :

http://www.cjoint.com
ou ici,
http://www.cijoint.fr/

et reviens ici, donner le lien de téléchargement que le site va générer.
nous pourrons alors le télécharger.

ps/ mets dans ce fichier le résultat attendu

isabelle



Le 2011-03-04 07:07, a écrit :

Bonjour,

Voila ce que j'assaye de faire et j'y arrive pas et je sais si c'est
meme
possible !!!

J'explique de façon synthétique sur un exemple court, l'adaptation se
fera
si possible.

J'ai une base de donnée avec plusieurs lignes.
Dans les cellules de la colonne B, et dans une cellule on peut avoir
plusieurs infos qui sont de la forme
J. Toto
B. Martin
C. Tata
ces valeurs sont séparées par "renvoyer a la ligne automatiquement pour
une
meilleure vision

Il en colonne C une valeur action 001 (par exemple)

Je souhaiterai dans une feuille dans un tableau que l'on retrouve
des lignes ou on a respectivement :

A B
Ligne 01 J. Toto 001
Ligne 02 B. Martin 001
Ligne 03 C. Tata 001


et ainsi de suite

Merci