demande d'aide sur un concaterner avec condition

Le
sleg
Bonjour,

avant d'exposer mon probleme je vous donne un rapide descriptif de ma
feuille.

Dans une feuille data j'ai en :
- colonne A un n°
- colonne B du texte
- colonne c du texte
- colonne D un texte type XXX / YYY / ZZZ etc

et j'aimerais dans une autre feuille nommée "Ticket metier" avoir une
formule qui me donnerais par exemple une concatenation de A + B pour
tous les XXX en b1 idem pour YYY en B2 etc avec un saut de ligne
entre chaque A+B.

sais pas si je suis tres clair la et si c'est possible ?



merci d'avance de vos reponses.
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 #5188381
Bonjour,


Sub Essai()
Set mondico = CreateObject("Scripting.Dictionary")
For Each c In Range("d1", [d65000].End(xlUp))
If Not mondico.Exists(c.Value) Then
mondico.Add c.Value, c.Offset(0, -3) & ":" & c.Offset(0, -2)
Else
temp = mondico.Item(c.Value)
mondico.Remove (c.Value)
mondico.Add c.Value, temp & Chr(10) & c.Offset(0, -3) & ":" &
c.Offset(0, -2)
End If
Next c
[h2].Resize(mondico.Count, 1) = Application.Transpose(mondico.keys)
[i2].Resize(mondico.Count, 1) = Application.Transpose(mondico.items)
End Sub

http://cjoint.com/?dlm5WD2QCS

JB
http://boisgontierjacques.free.fr/


On 11 mar, 10:46, sleg
Bonjour,

avant d'exposer mon probleme je vous donne un rapide descriptif de ma
feuille.

Dans une feuille data j'ai en :
- colonne A un n°
- colonne B du texte
- colonne c du texte
- colonne D un texte type XXX / YYY / ZZZ etc

et j'aimerais dans une autre feuille nommée "Ticket metier" avoir une
formule qui me donnerais par exemple une concatenation de A + B pour
tous les XXX en b1 idem pour YYY en B2 etc... avec un saut de ligne
entre chaque A+B.

sais pas si je suis tres clair la et si c'est possible ?

merci d'avance de vos reponses.


sleg
Le #5188321
Merci,

mais j'ai un erreur d'execution 13 sur la ligne
"[i2].Resize(mondico.Count, 1) =
Application.Transpose(mondico.items)" ?

une idée ?


On 11 mar, 12:57, JB
Bonjour,

Sub Essai()
  Set mondico = CreateObject("Scripting.Dictionary")
  For Each c In Range("d1", [d65000].End(xlUp))
    If Not mondico.Exists(c.Value) Then
       mondico.Add c.Value, c.Offset(0, -3) & ":" & c.Offset(0, -2 )
    Else
      temp = mondico.Item(c.Value)
      mondico.Remove (c.Value)
      mondico.Add c.Value, temp & Chr(10) & c.Offset(0, -3) & ":" &
c.Offset(0, -2)
    End If
  Next c
  [h2].Resize(mondico.Count, 1) = Application.Transpose(mondico.keys)
  [i2].Resize(mondico.Count, 1) = Application.Transpose(mondico.items)
End Sub

http://cjoint.com/?dlm5WD2QCS

JBhttp://boisgontierjacques.free.fr/

On 11 mar, 10:46, sleg


Bonjour,

avant d'exposer mon probleme je vous donne un rapide descriptif de ma
feuille.

Dans une feuille data j'ai en :
- colonne A un n°
- colonne B du texte
- colonne c du texte
- colonne D un texte type XXX / YYY / ZZZ etc

et j'aimerais dans une autre feuille nommée "Ticket metier" avoir une
formule qui me donnerais par exemple une concatenation de A + B pour
tous les XXX en b1 idem pour YYY en B2 etc... avec un saut de ligne
entre chaque A+B.

sais pas si je suis tres clair la et si c'est possible ?

merci d'avance de vos reponses.- Masquer le texte des messages précé dents -


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



sleg
Le #5188301
pou info dans la colonne B j'ai des : / : @ des caracteres comme ça
je crois que ces caracteres provoque cette erreuer une idée pour
contourner le probleme ?


On 11 mar, 12:57, JB
Bonjour,

Sub Essai()
  Set mondico = CreateObject("Scripting.Dictionary")
  For Each c In Range("d1", [d65000].End(xlUp))
    If Not mondico.Exists(c.Value) Then
       mondico.Add c.Value, c.Offset(0, -3) & ":" & c.Offset(0, -2 )
    Else
      temp = mondico.Item(c.Value)
      mondico.Remove (c.Value)
      mondico.Add c.Value, temp & Chr(10) & c.Offset(0, -3) & ":" &
c.Offset(0, -2)
    End If
  Next c
  [h2].Resize(mondico.Count, 1) = Application.Transpose(mondico.keys)
  [i2].Resize(mondico.Count, 1) = Application.Transpose(mondico.items)
End Sub

http://cjoint.com/?dlm5WD2QCS

JBhttp://boisgontierjacques.free.fr/

On 11 mar, 10:46, sleg


Bonjour,

avant d'exposer mon probleme je vous donne un rapide descriptif de ma
feuille.

Dans une feuille data j'ai en :
- colonne A un n°
- colonne B du texte
- colonne c du texte
- colonne D un texte type XXX / YYY / ZZZ etc

et j'aimerais dans une autre feuille nommée "Ticket metier" avoir une
formule qui me donnerais par exemple une concatenation de A + B pour
tous les XXX en b1 idem pour YYY en B2 etc... avec un saut de ligne
entre chaque A+B.

sais pas si je suis tres clair la et si c'est possible ?

merci d'avance de vos reponses.- Masquer le texte des messages précé dents -


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



sleg
Le #5188271
Re moi le probleme vient que j'ai dans certaine colonnes plus de 255
caracteres. et la ça marche plus une solution ?




On 11 mar, 12:57, JB
Bonjour,

Sub Essai()
  Set mondico = CreateObject("Scripting.Dictionary")
  For Each c In Range("d1", [d65000].End(xlUp))
    If Not mondico.Exists(c.Value) Then
       mondico.Add c.Value, c.Offset(0, -3) & ":" & c.Offset(0, -2 )
    Else
      temp = mondico.Item(c.Value)
      mondico.Remove (c.Value)
      mondico.Add c.Value, temp & Chr(10) & c.Offset(0, -3) & ":" &
c.Offset(0, -2)
    End If
  Next c
  [h2].Resize(mondico.Count, 1) = Application.Transpose(mondico.keys)
  [i2].Resize(mondico.Count, 1) = Application.Transpose(mondico.items)
End Sub

http://cjoint.com/?dlm5WD2QCS

JBhttp://boisgontierjacques.free.fr/

On 11 mar, 10:46, sleg


Bonjour,

avant d'exposer mon probleme je vous donne un rapide descriptif de ma
feuille.

Dans une feuille data j'ai en :
- colonne A un n°
- colonne B du texte
- colonne c du texte
- colonne D un texte type XXX / YYY / ZZZ etc

et j'aimerais dans une autre feuille nommée "Ticket metier" avoir une
formule qui me donnerais par exemple une concatenation de A + B pour
tous les XXX en b1 idem pour YYY en B2 etc... avec un saut de ligne
entre chaque A+B.

sais pas si je suis tres clair la et si c'est possible ?

merci d'avance de vos reponses.- Masquer le texte des messages précé dents -


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



JB
Le #5188251
Sub Essai()
Set mondico = CreateObject("Scripting.Dictionary")
For Each c In Range("d1", [d65000].End(xlUp))
If Not mondico.Exists(c.Value) Then
mondico.Add c.Value, c.Offset(0, -3) & ":" & c.Offset(0, -2)
Else
temp = mondico.Item(c.Value)
mondico.Remove (c.Value)
mondico.Add c.Value, temp & Chr(10) & c.Offset(0, -3) & ":" &
c.Offset(0, -2)
End If
Next c
a = mondico.keys
b = mondico.items
For i = LBound(b) To UBound(b)
Sheets(2).Cells(i + 1, 1) = a(i)
Sheets(2).Cells(i + 1, 2) = b(i)
Next i
End Sub

http://cjoint.com/?dloyZKlYiW

JB


On 11 mar, 14:00, sleg
pou info dans la colonne B j'ai des : / : @ des caracteres comme ça
je crois que ces caracteres provoque cette erreuer une idée pour
contourner le probleme ?

On 11 mar, 12:57, JB


Bonjour,

Sub Essai()
  Set mondico = CreateObject("Scripting.Dictionary")
  For Each c In Range("d1", [d65000].End(xlUp))
    If Not mondico.Exists(c.Value) Then
       mondico.Add c.Value, c.Offset(0, -3) & ":" & c.Offset(0, -2)
    Else
      temp = mondico.Item(c.Value)
      mondico.Remove (c.Value)
      mondico.Add c.Value, temp & Chr(10) & c.Offset(0, -3) & ":" &
c.Offset(0, -2)
    End If
  Next c
  [h2].Resize(mondico.Count, 1) = Application.Transpose(mondico.keys )
  [i2].Resize(mondico.Count, 1) = Application.Transpose(mondico.item s)
End Sub

http://cjoint.com/?dlm5WD2QCS

JBhttp://boisgontierjacques.free.fr/

On 11 mar, 10:46, sleg
Bonjour,

avant d'exposer mon probleme je vous donne un rapide descriptif de ma
feuille.

Dans une feuille data j'ai en :
- colonne A un n°
- colonne B du texte
- colonne c du texte
- colonne D un texte type XXX / YYY / ZZZ etc

et j'aimerais dans une autre feuille nommée "Ticket metier" avoir un e
formule qui me donnerais par exemple une concatenation de A + B pour
tous les XXX en b1 idem pour YYY en B2 etc... avec un saut de ligne
entre chaque A+B.

sais pas si je suis tres clair la et si c'est possible ?

merci d'avance de vos reponses.- Masquer le texte des messages préc édents -


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


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




JB
Le #5188171
http://cjoint.com/?dloyZKlYiW

JB

On 11 mar, 14:22, sleg
Re moi le probleme vient que j'ai dans certaine colonnes plus de 255
caracteres. et la ça marche plus une solution ?

On 11 mar, 12:57, JB


Bonjour,

Sub Essai()
  Set mondico = CreateObject("Scripting.Dictionary")
  For Each c In Range("d1", [d65000].End(xlUp))
    If Not mondico.Exists(c.Value) Then
       mondico.Add c.Value, c.Offset(0, -3) & ":" & c.Offset(0, -2)
    Else
      temp = mondico.Item(c.Value)
      mondico.Remove (c.Value)
      mondico.Add c.Value, temp & Chr(10) & c.Offset(0, -3) & ":" &
c.Offset(0, -2)
    End If
  Next c
  [h2].Resize(mondico.Count, 1) = Application.Transpose(mondico.keys )
  [i2].Resize(mondico.Count, 1) = Application.Transpose(mondico.item s)
End Sub

http://cjoint.com/?dlm5WD2QCS

JBhttp://boisgontierjacques.free.fr/

On 11 mar, 10:46, sleg
Bonjour,

avant d'exposer mon probleme je vous donne un rapide descriptif de ma
feuille.

Dans une feuille data j'ai en :
- colonne A un n°
- colonne B du texte
- colonne c du texte
- colonne D un texte type XXX / YYY / ZZZ etc

et j'aimerais dans une autre feuille nommée "Ticket metier" avoir un e
formule qui me donnerais par exemple une concatenation de A + B pour
tous les XXX en b1 idem pour YYY en B2 etc... avec un saut de ligne
entre chaque A+B.

sais pas si je suis tres clair la et si c'est possible ?

merci d'avance de vos reponses.- Masquer le texte des messages préc édents -


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


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




sleg
Le #5188041
Merci je teste et te fais un retour.



On 11 mar, 14:53, JB
http://cjoint.com/?dloyZKlYiW

JB

On 11 mar, 14:22, sleg


Re moi le probleme vient que j'ai dans certaine colonnes plus de 255
caracteres. et la ça marche plus une solution ?

On 11 mar, 12:57, JB
Bonjour,

Sub Essai()
  Set mondico = CreateObject("Scripting.Dictionary")
  For Each c In Range("d1", [d65000].End(xlUp))
    If Not mondico.Exists(c.Value) Then
       mondico.Add c.Value, c.Offset(0, -3) & ":" & c.Offset(0 , -2)
    Else
      temp = mondico.Item(c.Value)
      mondico.Remove (c.Value)
      mondico.Add c.Value, temp & Chr(10) & c.Offset(0, -3) & ": " &
c.Offset(0, -2)
    End If
  Next c
  [h2].Resize(mondico.Count, 1) = Application.Transpose(mondico.ke ys)
  [i2].Resize(mondico.Count, 1) = Application.Transpose(mondico.it ems)
End Sub

http://cjoint.com/?dlm5WD2QCS

JBhttp://boisgontierjacques.free.fr/

On 11 mar, 10:46, sleg
Bonjour,

avant d'exposer mon probleme je vous donne un rapide descriptif de m a
feuille.

Dans une feuille data j'ai en :
- colonne A un n°
- colonne B du texte
- colonne c du texte
- colonne D un texte type XXX / YYY / ZZZ etc

et j'aimerais dans une autre feuille nommée "Ticket metier" avoir une
formule qui me donnerais par exemple une concatenation de A + B pour
tous les XXX en b1 idem pour YYY en B2 etc... avec un saut de ligne
entre chaque A+B.

sais pas si je suis tres clair la et si c'est possible ?

merci d'avance de vos reponses.- Masquer le texte des messages pré cédents -


- Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -


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


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





sleg
Le #5185691
Bonjour,

Grand merci ça marche nickel mais j'aimerais savoir s'il est possible
d'ajouter un saut de ligne entre chaque a+b ?


On 11 mar, 14:53, JB
http://cjoint.com/?dloyZKlYiW

JB

On 11 mar, 14:22, sleg


Re moi le probleme vient que j'ai dans certaine colonnes plus de 255
caracteres. et la ça marche plus une solution ?

On 11 mar, 12:57, JB
Bonjour,

Sub Essai()
  Set mondico = CreateObject("Scripting.Dictionary")
  For Each c In Range("d1", [d65000].End(xlUp))
    If Not mondico.Exists(c.Value) Then
       mondico.Add c.Value, c.Offset(0, -3) & ":" & c.Offset(0 , -2)
    Else
      temp = mondico.Item(c.Value)
      mondico.Remove (c.Value)
      mondico.Add c.Value, temp & Chr(10) & c.Offset(0, -3) & ": " &
c.Offset(0, -2)
    End If
  Next c
  [h2].Resize(mondico.Count, 1) = Application.Transpose(mondico.ke ys)
  [i2].Resize(mondico.Count, 1) = Application.Transpose(mondico.it ems)
End Sub

http://cjoint.com/?dlm5WD2QCS

JBhttp://boisgontierjacques.free.fr/

On 11 mar, 10:46, sleg
Bonjour,

avant d'exposer mon probleme je vous donne un rapide descriptif de m a
feuille.

Dans une feuille data j'ai en :
- colonne A un n°
- colonne B du texte
- colonne c du texte
- colonne D un texte type XXX / YYY / ZZZ etc

et j'aimerais dans une autre feuille nommée "Ticket metier" avoir une
formule qui me donnerais par exemple une concatenation de A + B pour
tous les XXX en b1 idem pour YYY en B2 etc... avec un saut de ligne
entre chaque A+B.

sais pas si je suis tres clair la et si c'est possible ?

merci d'avance de vos reponses.- Masquer le texte des messages pré cédents -


- Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -


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


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





JB
Le #5185681
Bonjour,

http://cjoint.com/?dmitT6nnJR

JB

On 12 mar, 07:45, sleg
Bonjour,

Grand merci ça marche nickel mais j'aimerais savoir s'il est possible
d'ajouter un saut de ligne entre chaque a+b ?

On 11 mar, 14:53, JB


http://cjoint.com/?dloyZKlYiW

JB

On 11 mar, 14:22, sleg
Re moi le probleme vient que j'ai dans certaine colonnes plus de 255
caracteres. et la ça marche plus une solution ?

On 11 mar, 12:57, JB
Bonjour,

Sub Essai()
  Set mondico = CreateObject("Scripting.Dictionary")
  For Each c In Range("d1", [d65000].End(xlUp))
    If Not mondico.Exists(c.Value) Then
       mondico.Add c.Value, c.Offset(0, -3) & ":" & c.Offset (0, -2)
    Else
      temp = mondico.Item(c.Value)
      mondico.Remove (c.Value)
      mondico.Add c.Value, temp & Chr(10) & c.Offset(0, -3) & ":" &
c.Offset(0, -2)
    End If
  Next c
  [h2].Resize(mondico.Count, 1) = Application.Transpose(mondico. keys)
  [i2].Resize(mondico.Count, 1) = Application.Transpose(mondico. items)
End Sub

http://cjoint.com/?dlm5WD2QCS

JBhttp://boisgontierjacques.free.fr/

On 11 mar, 10:46, sleg
Bonjour,

avant d'exposer mon probleme je vous donne un rapide descriptif de ma
feuille.

Dans une feuille data j'ai en :
- colonne A un n°
- colonne B du texte
- colonne c du texte
- colonne D un texte type XXX / YYY / ZZZ etc

et j'aimerais dans une autre feuille nommée "Ticket metier" avoi r une
formule qui me donnerais par exemple une concatenation de A + B po ur
tous les XXX en b1 idem pour YYY en B2 etc... avec un saut de lign e
entre chaque A+B.

sais pas si je suis tres clair la et si c'est possible ?

merci d'avance de vos reponses.- Masquer le texte des messages pr écédents -


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


- Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -


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


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






sleg
Le #5185661
Grand merci ça marche vraiment bien.

passe une bonne journée.


On 12 mar, 08:19, JB
Bonjour,

http://cjoint.com/?dmitT6nnJR

JB

On 12 mar, 07:45, sleg


Bonjour,

Grand merci ça marche nickel mais j'aimerais savoir s'il est possible
d'ajouter un saut de ligne entre chaque a+b ?

On 11 mar, 14:53, JB
http://cjoint.com/?dloyZKlYiW

JB

On 11 mar, 14:22, sleg
Re moi le probleme vient que j'ai dans certaine colonnes plus de 255
caracteres. et la ça marche plus une solution ?

On 11 mar, 12:57, JB
Bonjour,

Sub Essai()
  Set mondico = CreateObject("Scripting.Dictionary")
  For Each c In Range("d1", [d65000].End(xlUp))
    If Not mondico.Exists(c.Value) Then
       mondico.Add c.Value, c.Offset(0, -3) & ":" & c.Offs et(0, -2)
    Else
      temp = mondico.Item(c.Value)
      mondico.Remove (c.Value)
      mondico.Add c.Value, temp & Chr(10) & c.Offset(0, -3) & ":" &
c.Offset(0, -2)
    End If
  Next c
  [h2].Resize(mondico.Count, 1) = Application.Transpose(mondic o.keys)
  [i2].Resize(mondico.Count, 1) = Application.Transpose(mondic o.items)
End Sub

http://cjoint.com/?dlm5WD2QCS

JBhttp://boisgontierjacques.free.fr/

On 11 mar, 10:46, sleg
Bonjour,

avant d'exposer mon probleme je vous donne un rapide descriptif de ma
feuille.

Dans une feuille data j'ai en :
- colonne A un n°
- colonne B du texte
- colonne c du texte
- colonne D un texte type XXX / YYY / ZZZ etc

et j'aimerais dans une autre feuille nommée "Ticket metier" av oir une
formule qui me donnerais par exemple une concatenation de A + B pour
tous les XXX en b1 idem pour YYY en B2 etc... avec un saut de li gne
entre chaque A+B.

sais pas si je suis tres clair la et si c'est possible ?

merci d'avance de vos reponses.- Masquer le texte des messages p récédents -


- Afficher le texte des messages précédents -- Masquer le text e des messages précédents -


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


- Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -


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


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







Publicité
Poster une réponse
Anonyme