J'ai un tableau :
Gerard : 10
Vincent : 30
Bob : 20
Vincent : 30
Alfred : 10
Gerard : 20
J'aimerai créer automatiquement dans un onglet une liste ne comportant qu'un
exemplaire de chaque nom et même (si possible) une liste comportant un seul
exemplaire de chaque nom mais avec l'addition des chiffres qui lui sont
associés.
J'ai un tableau : Gerard : 10 Vincent : 30 Bob : 20 Vincent : 30 Alfred : 10 Gerard : 20
J'aimerai créer automatiquement dans un onglet une liste ne comportant qu'un exemplaire de chaque nom et même (si possible) une liste comportant un seul exemplaire de chaque nom mais avec l'addition des chiffres qui lui sont associés.
On 9 mar, 23:28, "nospam.BOBBY" <bobby.c...@laposte.net> wrote:
Bonjour,
J'ai un tableau :
Gerard : 10
Vincent : 30
Bob : 20
Vincent : 30
Alfred : 10
Gerard : 20
J'aimerai créer automatiquement dans un onglet une liste ne comportant qu'un
exemplaire de chaque nom et même (si possible) une liste comportant un seul
exemplaire de chaque nom mais avec l'addition des chiffres qui lui sont
associés.
J'ai un tableau : Gerard : 10 Vincent : 30 Bob : 20 Vincent : 30 Alfred : 10 Gerard : 20
J'aimerai créer automatiquement dans un onglet une liste ne comportant qu'un exemplaire de chaque nom et même (si possible) une liste comportant un seul exemplaire de chaque nom mais avec l'addition des chiffres qui lui sont associés.
Cela donnerait :
Gerard : 30 Vincent : 60 Bob : 20 Alfred : 10
Je ne sais pas si je suis clair...
Merci d'avance en tous cas pour votre aide.
JB
Avec formules
Noms de champ montant ½!$B$2:$B$20 nom ½!$A$2:$A$20
En A2: =INDEX(BD!$A:$A;MIN(SI(nom<>"";SI(NB.SI(A $1:A1;nom)=0;LIGNE(nom);LIGNES(nom)+LIGNE(nom))))) Valider avec maj+ctrl+entrée
> J'ai un tableau : > Gerard : 10 > Vincent : 30 > Bob : 20 > Vincent : 30 > Alfred : 10 > Gerard : 20
> J'aimerai créer automatiquement dans un onglet une liste ne comportan t qu'un > exemplaire de chaque nom et même (si possible) une liste comportant u n seul > exemplaire de chaque nom mais avec l'addition des chiffres qui lui sont > associés.
> Cela donnerait :
> Gerard : 30 > Vincent : 60 > Bob : 20 > Alfred : 10
> Je ne sais pas si je suis clair...
> Merci d'avance en tous cas pour votre aide.- Masquer le texte des messa ges précédents -
- Afficher le texte des messages précédents -
Avec formules
Noms de champ
montant =BD!$B$2:$B$20
nom =BD!$A$2:$A$20
En A2:
=INDEX(BD!$A:$A;MIN(SI(nom<>"";SI(NB.SI(A
$1:A1;nom)=0;LIGNE(nom);LIGNES(nom)+LIGNE(nom)))))
Valider avec maj+ctrl+entrée
En B2:
=SI(A2<>"";SOMME.SI(nom;A2;montant);0)
http://cjoint.com/?dkgGpNJT2w
JB
http://boisgontierjacques.free.fr/
On 10 mar, 05:47, JB <boisgont...@hotmail.com> wrote:
On 9 mar, 23:28, "nospam.BOBBY" <bobby.c...@laposte.net> wrote:
> Bonjour,
> J'ai un tableau :
> Gerard : 10
> Vincent : 30
> Bob : 20
> Vincent : 30
> Alfred : 10
> Gerard : 20
> J'aimerai créer automatiquement dans un onglet une liste ne comportan t qu'un
> exemplaire de chaque nom et même (si possible) une liste comportant u n seul
> exemplaire de chaque nom mais avec l'addition des chiffres qui lui sont
> associés.
> Cela donnerait :
> Gerard : 30
> Vincent : 60
> Bob : 20
> Alfred : 10
> Je ne sais pas si je suis clair...
> Merci d'avance en tous cas pour votre aide.- Masquer le texte des messa ges précédents -
> J'ai un tableau : > Gerard : 10 > Vincent : 30 > Bob : 20 > Vincent : 30 > Alfred : 10 > Gerard : 20
> J'aimerai créer automatiquement dans un onglet une liste ne comportan t qu'un > exemplaire de chaque nom et même (si possible) une liste comportant u n seul > exemplaire de chaque nom mais avec l'addition des chiffres qui lui sont > associés.
> Cela donnerait :
> Gerard : 30 > Vincent : 60 > Bob : 20 > Alfred : 10
> Je ne sais pas si je suis clair...
> Merci d'avance en tous cas pour votre aide.- Masquer le texte des messa ges précédents -
- Afficher le texte des messages précédents -
nospam.BOBBY
Merci beaucoup. Je regarde ça tout de suite.
Cordialement
"JB" a écrit dans le message de news:
Avec formules
Noms de champ montant ½!$B$2:$B$20 nom ½!$A$2:$A$20
En A2: =INDEX(BD!$A:$A;MIN(SI(nom<>"";SI(NB.SI(A $1:A1;nom)=0;LIGNE(nom);LIGNES(nom)+LIGNE(nom))))) Valider avec maj+ctrl+entrée
> J'ai un tableau : > Gerard : 10 > Vincent : 30 > Bob : 20 > Vincent : 30 > Alfred : 10 > Gerard : 20
> J'aimerai créer automatiquement dans un onglet une liste ne comportant > qu'un > exemplaire de chaque nom et même (si possible) une liste comportant un > seul > exemplaire de chaque nom mais avec l'addition des chiffres qui lui sont > associés.
> Cela donnerait :
> Gerard : 30 > Vincent : 60 > Bob : 20 > Alfred : 10
> Je ne sais pas si je suis clair...
> Merci d'avance en tous cas pour votre aide.- Masquer le texte des > messages précédents -
- Afficher le texte des messages précédents -
Merci beaucoup.
Je regarde ça tout de suite.
Cordialement
"JB" <boisgontier@hotmail.com> a écrit dans le message de news:
4230610f-d00c-46eb-85cb-b74ca9957512@t41g2000yqt.googlegroups.com...
Avec formules
Noms de champ
montant ½!$B$2:$B$20
nom ½!$A$2:$A$20
En A2:
=INDEX(BD!$A:$A;MIN(SI(nom<>"";SI(NB.SI(A
$1:A1;nom)=0;LIGNE(nom);LIGNES(nom)+LIGNE(nom)))))
Valider avec maj+ctrl+entrée
En B2:
=SI(A2<>"";SOMME.SI(nom;A2;montant);0)
http://cjoint.com/?dkgGpNJT2w
JB
http://boisgontierjacques.free.fr/
On 10 mar, 05:47, JB <boisgont...@hotmail.com> wrote:
On 9 mar, 23:28, "nospam.BOBBY" <bobby.c...@laposte.net> wrote:
> Bonjour,
> J'ai un tableau :
> Gerard : 10
> Vincent : 30
> Bob : 20
> Vincent : 30
> Alfred : 10
> Gerard : 20
> J'aimerai créer automatiquement dans un onglet une liste ne comportant
> qu'un
> exemplaire de chaque nom et même (si possible) une liste comportant un
> seul
> exemplaire de chaque nom mais avec l'addition des chiffres qui lui sont
> associés.
> Cela donnerait :
> Gerard : 30
> Vincent : 60
> Bob : 20
> Alfred : 10
> Je ne sais pas si je suis clair...
> Merci d'avance en tous cas pour votre aide.- Masquer le texte des
> messages précédents -
> J'ai un tableau : > Gerard : 10 > Vincent : 30 > Bob : 20 > Vincent : 30 > Alfred : 10 > Gerard : 20
> J'aimerai créer automatiquement dans un onglet une liste ne comportant > qu'un > exemplaire de chaque nom et même (si possible) une liste comportant un > seul > exemplaire de chaque nom mais avec l'addition des chiffres qui lui sont > associés.
> Cela donnerait :
> Gerard : 30 > Vincent : 60 > Bob : 20 > Alfred : 10
> Je ne sais pas si je suis clair...
> Merci d'avance en tous cas pour votre aide.- Masquer le texte des > messages précédents -
- Afficher le texte des messages précédents -
FFO
Salut à toi
Soit Onglet "Donnée" la liste des noms et des nombres associés Onglet "Synthèse" le résultat avec chaque nom unique et leur somme Je te propose ces lignes de code :
If Sheets("Synthèse").Range("A2") <> "" Then Sheets("Synthèse").Range("A2", "B" & Sheets("Synthèse").Range("A65535").End(xlUp).Row).Clear End If i = 2 Do While i < Range("A65535").End(xlUp).Row + 1 If Liste Like "*" & Range("A" & i) & "*" = False Then Ligne = Sheets("Synthèse").Range("A65535").End(xlUp).Offset(1, 0).Row Sheets("Synthèse").Range("A" & Ligne) = Range("A" & i) Sheets("Synthèse").Range("B" & Ligne) = Range("B" & i) Liste = Liste & Range("A" & i) & "/" Else Ligne = Sheets("Synthèse").Columns("A:A").Find(What:=Range("A" & i), After:=Sheets("Synthèse").Range("A1"), LookIn:=xlValues, LookAt:=xlWhole).Row Sheets("Synthèse").Range("B" & Ligne) = Sheets("Synthèse").Range("B" & Ligne) + Range("B" & i) End If Ligne = "" i = i + 1 Loop
Aprés l'avoir récupéré et ouvert actives Onglet "Donnée" le bouton "Traitement" Vas constater le résultat Onglet "Synthèse"
Donnes moi des nouvelles !!!!!!
Salut à toi
Soit Onglet "Donnée" la liste des noms et des nombres associés
Onglet "Synthèse" le résultat avec chaque nom unique et leur somme
Je te propose ces lignes de code :
If Sheets("Synthèse").Range("A2") <> "" Then
Sheets("Synthèse").Range("A2", "B" &
Sheets("Synthèse").Range("A65535").End(xlUp).Row).Clear
End If
i = 2
Do While i < Range("A65535").End(xlUp).Row + 1
If Liste Like "*" & Range("A" & i) & "*" = False Then
Ligne = Sheets("Synthèse").Range("A65535").End(xlUp).Offset(1, 0).Row
Sheets("Synthèse").Range("A" & Ligne) = Range("A" & i)
Sheets("Synthèse").Range("B" & Ligne) = Range("B" & i)
Liste = Liste & Range("A" & i) & "/"
Else
Ligne = Sheets("Synthèse").Columns("A:A").Find(What:=Range("A" & i),
After:=Sheets("Synthèse").Range("A1"), LookIn:=xlValues, LookAt:=xlWhole).Row
Sheets("Synthèse").Range("B" & Ligne) = Sheets("Synthèse").Range("B" &
Ligne) + Range("B" & i)
End If
Ligne = ""
i = i + 1
Loop
Soit Onglet "Donnée" la liste des noms et des nombres associés Onglet "Synthèse" le résultat avec chaque nom unique et leur somme Je te propose ces lignes de code :
If Sheets("Synthèse").Range("A2") <> "" Then Sheets("Synthèse").Range("A2", "B" & Sheets("Synthèse").Range("A65535").End(xlUp).Row).Clear End If i = 2 Do While i < Range("A65535").End(xlUp).Row + 1 If Liste Like "*" & Range("A" & i) & "*" = False Then Ligne = Sheets("Synthèse").Range("A65535").End(xlUp).Offset(1, 0).Row Sheets("Synthèse").Range("A" & Ligne) = Range("A" & i) Sheets("Synthèse").Range("B" & Ligne) = Range("B" & i) Liste = Liste & Range("A" & i) & "/" Else Ligne = Sheets("Synthèse").Columns("A:A").Find(What:=Range("A" & i), After:=Sheets("Synthèse").Range("A1"), LookIn:=xlValues, LookAt:=xlWhole).Row Sheets("Synthèse").Range("B" & Ligne) = Sheets("Synthèse").Range("B" & Ligne) + Range("B" & i) End If Ligne = "" i = i + 1 Loop
Aprés l'avoir récupéré et ouvert actives Onglet "Donnée" le bouton "Traitement" Vas constater le résultat Onglet "Synthèse"
Donnes moi des nouvelles !!!!!!
michdenis
Bonjour,
Une autre approche :
En supposant que dans la colonne A, les noms et en colonne B la valeur numérique. Il est supposé que ces 2 colonnes de la "feuil1" ont des étiquettes de colonnes.
Le résultat apparaît en "feuil2"
'----------------------------------------- Sub test() Dim Rg As Range, Rg1 As Range
With Feuil1 Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row) End With With Rg .AdvancedFilter xlFilterCopy, , Feuil2.Range("A1"), True End With With Feuil2 Set Rg1 = .Range("A2:A" & .Range("A65536").End(xlUp).Row) End With With Rg1 .Offset(-1, 1)(1) = Rg.Offset(, 1)(1) .Offset(, 1).Formula = "=Sumif(" & Rg.Parent.Name & "!" & _ Rg.Address & "," & Rg1.Parent.Name & "!" & _ Rg1(1).Address(0, 0) & "," & Rg.Parent.Name & _ "!" & Rg.Offset(, 1).Address & ")" .Offset(, 1).Value = .Offset(, 1).Value End With
End Sub '-----------------------------------------
"nospam.BOBBY" a écrit dans le message de groupe de discussion :
Bonjour,
J'ai un tableau : Gerard : 10 Vincent : 30 Bob : 20 Vincent : 30 Alfred : 10 Gerard : 20
J'aimerai créer automatiquement dans un onglet une liste ne comportant qu'un exemplaire de chaque nom et même (si possible) une liste comportant un seul exemplaire de chaque nom mais avec l'addition des chiffres qui lui sont associés.
Cela donnerait :
Gerard : 30 Vincent : 60 Bob : 20 Alfred : 10
Je ne sais pas si je suis clair...
Merci d'avance en tous cas pour votre aide.
Bonjour,
Une autre approche :
En supposant que dans la colonne A, les noms
et en colonne B la valeur numérique.
Il est supposé que ces 2 colonnes de la "feuil1" ont
des étiquettes de colonnes.
Le résultat apparaît en "feuil2"
'-----------------------------------------
Sub test()
Dim Rg As Range, Rg1 As Range
With Feuil1
Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row)
End With
With Rg
.AdvancedFilter xlFilterCopy, , Feuil2.Range("A1"), True
End With
With Feuil2
Set Rg1 = .Range("A2:A" & .Range("A65536").End(xlUp).Row)
End With
With Rg1
.Offset(-1, 1)(1) = Rg.Offset(, 1)(1)
.Offset(, 1).Formula = "=Sumif(" & Rg.Parent.Name & "!" & _
Rg.Address & "," & Rg1.Parent.Name & "!" & _
Rg1(1).Address(0, 0) & "," & Rg.Parent.Name & _
"!" & Rg.Offset(, 1).Address & ")"
.Offset(, 1).Value = .Offset(, 1).Value
End With
End Sub
'-----------------------------------------
"nospam.BOBBY" <bobby.cire@laposte.net> a écrit dans le message de groupe de discussion :
eUxkPf9vKHA.5036@TK2MSFTNGP02.phx.gbl...
Bonjour,
J'ai un tableau :
Gerard : 10
Vincent : 30
Bob : 20
Vincent : 30
Alfred : 10
Gerard : 20
J'aimerai créer automatiquement dans un onglet une liste ne comportant qu'un
exemplaire de chaque nom et même (si possible) une liste comportant un seul
exemplaire de chaque nom mais avec l'addition des chiffres qui lui sont
associés.
En supposant que dans la colonne A, les noms et en colonne B la valeur numérique. Il est supposé que ces 2 colonnes de la "feuil1" ont des étiquettes de colonnes.
Le résultat apparaît en "feuil2"
'----------------------------------------- Sub test() Dim Rg As Range, Rg1 As Range
With Feuil1 Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row) End With With Rg .AdvancedFilter xlFilterCopy, , Feuil2.Range("A1"), True End With With Feuil2 Set Rg1 = .Range("A2:A" & .Range("A65536").End(xlUp).Row) End With With Rg1 .Offset(-1, 1)(1) = Rg.Offset(, 1)(1) .Offset(, 1).Formula = "=Sumif(" & Rg.Parent.Name & "!" & _ Rg.Address & "," & Rg1.Parent.Name & "!" & _ Rg1(1).Address(0, 0) & "," & Rg.Parent.Name & _ "!" & Rg.Offset(, 1).Address & ")" .Offset(, 1).Value = .Offset(, 1).Value End With
End Sub '-----------------------------------------
"nospam.BOBBY" a écrit dans le message de groupe de discussion :
Bonjour,
J'ai un tableau : Gerard : 10 Vincent : 30 Bob : 20 Vincent : 30 Alfred : 10 Gerard : 20
J'aimerai créer automatiquement dans un onglet une liste ne comportant qu'un exemplaire de chaque nom et même (si possible) une liste comportant un seul exemplaire de chaque nom mais avec l'addition des chiffres qui lui sont associés.
Cela donnerait :
Gerard : 30 Vincent : 60 Bob : 20 Alfred : 10
Je ne sais pas si je suis clair...
Merci d'avance en tous cas pour votre aide.
nospam.BOBBY
Merci à tous pour vos précieuses méthodes.
Cordialement
"michdenis" a écrit dans le message de news:
Bonjour,
Une autre approche :
En supposant que dans la colonne A, les noms et en colonne B la valeur numérique. Il est supposé que ces 2 colonnes de la "feuil1" ont des étiquettes de colonnes.
Le résultat apparaît en "feuil2"
'----------------------------------------- Sub test() Dim Rg As Range, Rg1 As Range
With Feuil1 Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row) End With With Rg .AdvancedFilter xlFilterCopy, , Feuil2.Range("A1"), True End With With Feuil2 Set Rg1 = .Range("A2:A" & .Range("A65536").End(xlUp).Row) End With With Rg1 .Offset(-1, 1)(1) = Rg.Offset(, 1)(1) .Offset(, 1).Formula = "=Sumif(" & Rg.Parent.Name & "!" & _ Rg.Address & "," & Rg1.Parent.Name & "!" & _ Rg1(1).Address(0, 0) & "," & Rg.Parent.Name & _ "!" & Rg.Offset(, 1).Address & ")" .Offset(, 1).Value = .Offset(, 1).Value End With
End Sub '-----------------------------------------
"nospam.BOBBY" a écrit dans le message de groupe de discussion :
Bonjour,
J'ai un tableau : Gerard : 10 Vincent : 30 Bob : 20 Vincent : 30 Alfred : 10 Gerard : 20
J'aimerai créer automatiquement dans un onglet une liste ne comportant qu'un exemplaire de chaque nom et même (si possible) une liste comportant un seul exemplaire de chaque nom mais avec l'addition des chiffres qui lui sont associés.
Cela donnerait :
Gerard : 30 Vincent : 60 Bob : 20 Alfred : 10
Je ne sais pas si je suis clair...
Merci d'avance en tous cas pour votre aide.
Merci à tous pour vos précieuses méthodes.
Cordialement
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
6D3BE44E-58D3-4643-A72D-B2A41289E4B3@microsoft.com...
Bonjour,
Une autre approche :
En supposant que dans la colonne A, les noms
et en colonne B la valeur numérique.
Il est supposé que ces 2 colonnes de la "feuil1" ont
des étiquettes de colonnes.
Le résultat apparaît en "feuil2"
'-----------------------------------------
Sub test()
Dim Rg As Range, Rg1 As Range
With Feuil1
Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row)
End With
With Rg
.AdvancedFilter xlFilterCopy, , Feuil2.Range("A1"), True
End With
With Feuil2
Set Rg1 = .Range("A2:A" & .Range("A65536").End(xlUp).Row)
End With
With Rg1
.Offset(-1, 1)(1) = Rg.Offset(, 1)(1)
.Offset(, 1).Formula = "=Sumif(" & Rg.Parent.Name & "!" & _
Rg.Address & "," & Rg1.Parent.Name & "!" & _
Rg1(1).Address(0, 0) & "," & Rg.Parent.Name & _
"!" & Rg.Offset(, 1).Address & ")"
.Offset(, 1).Value = .Offset(, 1).Value
End With
End Sub
'-----------------------------------------
"nospam.BOBBY" <bobby.cire@laposte.net> a écrit dans le message de groupe
de discussion :
eUxkPf9vKHA.5036@TK2MSFTNGP02.phx.gbl...
Bonjour,
J'ai un tableau :
Gerard : 10
Vincent : 30
Bob : 20
Vincent : 30
Alfred : 10
Gerard : 20
J'aimerai créer automatiquement dans un onglet une liste ne comportant
qu'un
exemplaire de chaque nom et même (si possible) une liste comportant un
seul
exemplaire de chaque nom mais avec l'addition des chiffres qui lui sont
associés.
En supposant que dans la colonne A, les noms et en colonne B la valeur numérique. Il est supposé que ces 2 colonnes de la "feuil1" ont des étiquettes de colonnes.
Le résultat apparaît en "feuil2"
'----------------------------------------- Sub test() Dim Rg As Range, Rg1 As Range
With Feuil1 Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row) End With With Rg .AdvancedFilter xlFilterCopy, , Feuil2.Range("A1"), True End With With Feuil2 Set Rg1 = .Range("A2:A" & .Range("A65536").End(xlUp).Row) End With With Rg1 .Offset(-1, 1)(1) = Rg.Offset(, 1)(1) .Offset(, 1).Formula = "=Sumif(" & Rg.Parent.Name & "!" & _ Rg.Address & "," & Rg1.Parent.Name & "!" & _ Rg1(1).Address(0, 0) & "," & Rg.Parent.Name & _ "!" & Rg.Offset(, 1).Address & ")" .Offset(, 1).Value = .Offset(, 1).Value End With
End Sub '-----------------------------------------
"nospam.BOBBY" a écrit dans le message de groupe de discussion :
Bonjour,
J'ai un tableau : Gerard : 10 Vincent : 30 Bob : 20 Vincent : 30 Alfred : 10 Gerard : 20
J'aimerai créer automatiquement dans un onglet une liste ne comportant qu'un exemplaire de chaque nom et même (si possible) une liste comportant un seul exemplaire de chaque nom mais avec l'addition des chiffres qui lui sont associés.