Une suite de logiciels de tableur Microsoft avec des outils pour analyser, créer des graphiques et communiquer des données
Bonjour,
Teste :
https://www.cjoint.com/c/NJdn03P7Rh3
Daniel
Ce navigateur n’est plus pris en charge.
Effectuez une mise à niveau vers Microsoft Edge pour tirer parti des dernières fonctionnalités, des mises à jour de sécurité et du support technique.
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)
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
Une suite de logiciels de tableur Microsoft avec des outils pour analyser, créer des graphiques et communiquer des données
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.
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
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
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
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