Recherche valeur sur plusieurs feuilles et reporter la somme des valeurs recherchées sur une feuille récapitulative

Anonyme
2024-09-28T10:42:22+00:00

Bonjour à tous

Je suis débutant en VBA, c'est le pourquoi je fais appel à votre aide car je souhaiterais créer un code macro mais je n’y arrive pas.

La valeur recherchée ici se trouve dans 02 colonnes de chacune de mes feuilles sources (autres onglets)

  • Collonne (D10 : D36)
  • Colonne (M10 : M36) 

Ma feuille récapitulative contient des codes qu'on retouve dans l'ensemble des onglets sources.

J’ai en tout plusieurs onglets sources comme expliqué.  Et Tous les tableaux dans chaque onglet ont le même nombre de colonnes (A10 à M36) contenant lesdits codes sur la colonne (A10 : A36).

Et les colonnes E à F de l’onglet récapitulatif représentent la somme des valeurs recherchées dans les différents onglets sources….

En résumé, une macro qui va aller chercher la valeur du code qui se trouve dans les onglets sources et puis consolider les valeurs rechercées.

(ex: Dans la feuille récapitulative  consolider la somme des valeurs du code "A.101" se trouvant dans l'ensemble des autres onglets : colonne D et M)

J'espère vraiment avoir été assez clair….Please

D'avance merci beaucoup pour votre aide

https://www.cjoint.com/c/NICuUHyftBG

Microsoft 365 et Office | Excel | Pour le business | Autres

Question verrouillée. Cette question a été migrée à partir de la Communauté Support Microsoft. Vous pouvez voter pour indiquer si elle est utile, mais vous ne pouvez pas ajouter de commentaires ou de réponses ni suivre la question.

0 commentaires Aucun commentaire
Réponse acceptée par l’auteur de la question
DanielCo 107.7K Points de réputation
2024-10-03T13:53:54+00:00

Bonjour,

Teste :

https://www.cjoint.com/c/NJdn03P7Rh3

Daniel

Cette réponse a-t-elle été utile ?

1 personne a trouvé cette réponse utile.
0 commentaires Aucun commentaire
Réponse acceptée par l’auteur de la question
DanielCo 107.7K Points de réputation
2024-09-29T10:42:56+00:00

Oups, désolé :

Sub Consolider()
Dim Sh As Worksheet, C As Range, Plage As Range, Quantité As Variant
Dim Valeur As Variant, Ctr As Variant
With Sheets("RECAP BUDGET RESSOURCES")
Set Plage = .Range("B6", .Cells(.Rows.Count, "B").End(xlUp))
Plage.Offset(, 3).Resize(, 2) = ""
End With
For Each Sh In Sheets
If Sh.Name <> "RECAP BUDGET RESSOURCES" And Sh.Name <> "DATA Ressources" And _
Sh.Name <> "XXXX" And Sh.Name <> "SD Prix" Then
With Sh
For Each C In Plage
Quantité = Application.VLookup(C.Value, .[A:D], 4, 0)
If IsNumeric(Quantité) Then C.Offset(, 3) = C.Offset(, 3) + Quantité
Valeur = Application.VLookup(C, .[A:M], 13, 0)
If IsNumeric(Valeur) Then C.Offset(, 4) = C.Offset(, 4) + Valeur
Next C
End With
End If
Next Sh
End Sub

Daniel

Cette réponse a-t-elle été utile ?

1 personne a trouvé cette réponse utile.
0 commentaires Aucun commentaire

7 réponses supplémentaires

  1. DanielCo 107.7K Points de réputation
    2024-09-29T09:32:59+00:00

    Bonjour,

    Essaie :

    https://www.cjoint.com/c/NIDjAOCLQO3

    Macro Consolider dans le module Daniel :

    Sub Consolider()
    Dim Sh As Worksheet, C As Range, Plage As Range, Quantité As Variant
    Dim Valeur As Variant, Ctr As Variant
    With Sheets("RECAP BUDGET RESSOURCES")
    Set Plage = .Range("B6", .Cells(.Rows.Count, "B").End(xlUp))
    Plage.Offset(, 3).Resize(, 2) = ""
    End With
    For Each Sh In Sheets
    If Sh.Name <> "RECAP BUDGET RESSOURCES" And Sh.Name <> "DATA Ressources" And _
    Sh.Name <> "XXXX" And Sh.Name <> "SD Prix" Then
    With Sh
    For Each C In Plage
    Quantité = Application.VLookup(C.Value, .[A:D], 4, 0)
    If IsNumeric(Quantité) Then C.Offset(, 3) = Quantité
    Valeur = Application.VLookup(C, .[A:M], 13, 0)
    If IsNumeric(Valeur) Then C.Offset(, 4) = Valeur
    Next C
    End With
    End If
    Next Sh
    End Sub

    Daniel

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  2. Anonyme
    2024-09-28T20:56:17+00:00

    Bonjour,

    Peux-tu partager le classeur en anonymisant les données confidentielles Pour le partager, clique sur : https://www.cjoint.com/ Clique sur le bouton "parcourir". Choisis le fichier à partager. Dans le bas de la page, clique sur le bouton "Créer le lien cjoint". Copie le lien affiché et colle-le dans ta réponse.

    Daniel

    https://www.cjoint.com/c/NICuUHyftBG D'avance merci M. Danielco

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  3. DanielCo 107.7K Points de réputation
    2024-09-28T12:43:17+00:00

    Bonjour,

    Peux-tu partager le classeur en anonymisant les données confidentielles Pour le partager, clique sur : https://www.cjoint.com/ Clique sur le bouton "parcourir". Choisis le fichier à partager. Dans le bas de la page, clique sur le bouton "Créer le lien cjoint". Copie le lien affiché et colle-le dans ta réponse.

    Daniel

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire