Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Recherche et somme

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

BRUNO62

XLDnaute Occasionnel
Bonjour,

Je souhaite à partir d'une feuille 1 reprendre des données et les insérer dans une feuil2
en regroupant les quantités
Avez vous une idée ?
Merci
A+
 

Pièces jointes

Re : Recherche et somme

Bonjour,

Une option avec ce code (sur bouton A):
Code:
Sub Macro2()
With Sheets("Feuil3")
    .Columns("A:B").ClearContents
    Sheets("Feuil1").Columns("A:A").Copy .Range("A1")
    .Range("$A1:A" & .Cells(Rows.Count, 1).End(xlUp).Row).RemoveDuplicates Columns:=1, Header:=xlYes
    .Range("B2:B" & .Cells(Rows.Count, 1).End(xlUp).Row).FormulaR1C1 = "=SUMIF(Feuil1!C[-1],RC[-1],Feuil1!C)"
End With
End Sub

Ou alors un TCD et cette ligne pour actualiser (sur bouton B feuille 3):
Code:
Sub Macro3()
    Sheets("Feuil1").PivotTables("Tableau croisé dynamique1").PivotCache.Refresh
End Sub

Bonne journée à toi,

mth
 

Pièces jointes

Re : Recherche et somme

Bonsoir DoubleZero,

Grand merci, c'est ok.
J'ai une autre question , j'exclu le croisé dynamique. J'alimente une feuil1 automatiquement sans aucune saisie et je souhaiterais reprendre ces données dans une feuil 2 pou effectuer une synthèse et cela ne fonctionne pas
Avez vous une idée ?
Par avance merci
A+
 
Re : Recherche et somme

Bonsoir à tous,

Il faudrait que tu expliques avec un petit bout de fichier ce que tu veux faire, car là pour l'instant reconnais que ce n'est pas très concret ...

(Par ailleurs, ton sujet est marqué "Excel 2010", par conséquent on utilise des fonctionnalités disponibles sur les versions récentes mais qui ne sont pas forcément compatibles avec les versions antérieures.
Quand tu dois avoir une compatibilité, précise le dans tes messages sans quoi on ne peut pas deviner.)

Bonne soirée ,

mth

Edit: Hello 00 🙂

Edit 2: 🙂 Bonsoir Victor 🙂
 
Dernière édition:
Re : Recherche et somme

Re-bonjour,

... J'alimente une feuil1 automatiquement sans aucune saisie et je souhaiterais reprendre ces données dans une feuil 2 pou effectuer une synthèse et cela ne fonctionne pas...

Si Feuil1 du fichier de travail se présente comme Feuil1 du fichier déposé sur le forum, je n’ai aucune idée sur l’origine du dysfonctionnement.

Pouvez-vous déposer une copie du fichier original en cause, bien évidement, sans données confidentielles.

Comme le dit mth 🙂 :

... ce n'est pas très concret ...

A bientôt.
 
Re : Recherche et somme

Bonsoir Bruno62, mth, oo 🙂🙂

Grand merci, c'est ok.
...et cela ne fonctionne pas

Là il faudrait expliquer ???

Une autre proposition par formule qui fonctionne sur 2003 en pj, mais rien de mieux que ce qui a été proposé par mes illustres prédécessrices 😛
 

Pièces jointes

Re : Recherche et somme

Re-bonjour, bonjour Victor21 🙂,

Pour ce qui me concerne, n’étant pas « illustre », Victor21 peut mettre ceci :

...mes illustres prédécessrices...

au singulier 😱 !

Quant au nouveau fichier joint, avant que chacun n’y travaille en vain 🙄… où se trouvent réellement les données qui doivent être traitées ? Onglet1 (initialement), onglet2 (à présent) ???
 
Re : Recherche et somme

re bonsoir à tous 🙂

Pas illustre non plus mth et de loin, mais Victor ta galanterie est toute à ton honneur 🙂

Avec ce que j'ai cru comprendre, ça donne ceci:
Code:
Option Explicit
Sub MAJ()
Application.ScreenUpdating = False
With Sheets("Feuil2")
    .Range("D1") = 1
    .Range("D1").Copy
    .Range("B2:C" & .Cells(Rows.Count, 1).End(xlUp).Row).PasteSpecial Paste:=xlPasteAll, Operation:=xlMultiply
    .Range("D1").ClearContents
End With
With Sheets("Feuil3")
    .[A1].CurrentRegion.Clear
    .[B1] = "MOTOS"
    .[C1] = "AUTOS"
    Sheets("Feuil2").[A:A].AdvancedFilter Action:=xlFilterCopy, _
        CopyToRange:=.Range("A2"), Unique:=True
    .Range("B2:B" & Range("A65536").End(xlUp).Row) = "=SUMIF(Feuil2!C[-1],RC[-1],Feuil2!C)"
    .Range("C2:C" & Range("A65536").End(xlUp).Row) = "=SUMIF(Feuil2!C[-2],RC[-2],Feuil2!C)"
End With
Application.ScreenUpdating = True
End Sub

Le premier With, c'est parce que les données de ton onglet Feuille 2 ne sont pas des chiffres mais du texte, le second est ton code un peu aménagé (tu avais par exemple un décalage de ligne)

Vois si cela peut te convenir,

Très bonne soirée à tous, 🙂
mth
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
172
Réponses
3
Affichages
233
Réponses
11
Affichages
509
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…