VBA: Association + addition des mêmes d'une feuille à l'autre

Résolu/Fermé
Metaux Messages postés 47 Date d'inscription mardi 16 juin 2015 Statut Membre Dernière intervention 13 octobre 2016 - 22 mars 2016 à 22:34
Metaux Messages postés 47 Date d'inscription mardi 16 juin 2015 Statut Membre Dernière intervention 13 octobre 2016 - 24 mars 2016 à 18:13
Bonjour,

J'aimerais que vous m'aidiez .. (ouvrez le fichier joint pour mieux suivre)

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

Voilà, ce que j'aimerais que le VBA exécute:

La feuille '' Sommaire'' doit retrouver le même nom de chacune de ses rangées de la colonne: Item [ Bi ] dans la feuille ''Entrée info'' dans la colonne Item [ Di ] et additionner les valeurs de la colonne Qté. [ Ei ] ayant le même Item pour ensuite retourner dans la feuille ''Sommaire'' et inscrire la somme total additionnée des mêmes Item dans la colonne Quantité(pi)

Exp. : Bague 2''

Dans la feuille ''Sommaire'' Bague 2'' se trouve à la ligne B63.
Il doit retrouver dans les feuille ''Entrée info'' tous les Item portant le même nom soit D13, D20 et D26 et additionner leur Qté. respective soit E13 + E20 + E26 et inscrire la somme (dans ce cas ci 1+1+1 = 3), dans la cellule C63

MErci

PS j'ai mi les valeurs qui devraient apparaître dans les rangées de la colonne C de la feuille '' Sommaire'' sur la feuille ''Résultat souhaité''


A voir également:

1 réponse

via55 Messages postés 14474 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 19 septembre 2024 2 728
23 mars 2016 à 01:38
Bonsoir Metaux

Voilà :
http://www.cjoint.com/c/FCxaLVeY0I1

Cdlmnt
Via
0
Metaux Messages postés 47 Date d'inscription mardi 16 juin 2015 Statut Membre Dernière intervention 13 octobre 2016
23 mars 2016 à 19:17
Merci beaucoup Via !! c'est exactement ce que je cherchais à faire !

Maintenant j'aurais une autre contrainte à ajouter si je peux me permettre !

J'ai ajouté une colonne '' Matériaux'', dans la feuille ''entrée info'' et des feuilles excel.

Donc sur la feuille ''Entrée info'' lorsque qu'à la colonne '' Matériaux'' c'est écrit : SomABS, Toujours avec le même code, j'aimerais donc que les données soient redirigées vers la feuille du même nom ''SomABS'', si dans la colonne c'est écrit SomPVC, je veux donc que le code inscrive sur la feuille du même nom : SomPVC


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

Merci bcp
0
via55 Messages postés 14474 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 19 septembre 2024 2 728 > Metaux Messages postés 47 Date d'inscription mardi 16 juin 2015 Statut Membre Dernière intervention 13 octobre 2016
23 mars 2016 à 20:46
Bonsoir,

Modifie ainsi la macro :
Sub transfert()
Dim Ligne As Long, lgr As Long
'dernière ligne remplie de la feuille active (Entrée infos)
Ligne = ActiveSheet.Columns(4).Find("*", , , , xlByColumns, xlPrevious).Row
' Boucle sur les lignes de la 3° à la dernière
For n = 3 To Ligne
Total = 0
' Si cellule en D non vide et que c'est la 1ere fois pour cet item et ce materiau
If Range("D" & n) <> "" And Application.WorksheetFunction.CountIfs(Range("D3:D" & n), Range("D" & n), Range("E3:E" & n), Range("E" & n)) = 1 Then
' alors on ajoute la quantité à total
Total = Total + Range("F" & n)
' puis on boucle sur les lignes qui suivent jusqu'à la dernière
For t = n + 1 To Ligne
' et si c'est le même item on ajoute la quantité au total
If Range("D" & t) = Range("D" & n) Then Total = Total + Range("F" & t)
Next t
nomf = Range("E" & n)
' ligne de l'item dans Sommaire
lgr = Sheets(nomf).Columns(2).Find(Range("D" & n), , , xlWhole, xlByColumns, xlPrevious).Row
' On met le total en colonne C de Sommaire
Sheets(nomf).Range("C" & lgr) = Total
End If
Next
MsgBox "Transfert des données dans Sommaires effectué"
End Sub


Cdlmnt
Via
0
Metaux Messages postés 47 Date d'inscription mardi 16 juin 2015 Statut Membre Dernière intervention 13 octobre 2016
23 mars 2016 à 21:22
Un gros ! merci,

Seulement, il y a une erreur de type "l'indice n'appartient à la sélection" à la ligne du code VBA qui débute par lgr = ... j'ai donc l'impression qu'il n'est reconnait pas l'écriture des onglets du classeur...
0
Metaux Messages postés 47 Date d'inscription mardi 16 juin 2015 Statut Membre Dernière intervention 13 octobre 2016 > Metaux Messages postés 47 Date d'inscription mardi 16 juin 2015 Statut Membre Dernière intervention 13 octobre 2016
23 mars 2016 à 21:37
J'AI résolu ! le tout fonctionne,

J'apprécie
0
Metaux Messages postés 47 Date d'inscription mardi 16 juin 2015 Statut Membre Dernière intervention 13 octobre 2016 > via55 Messages postés 14474 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 19 septembre 2024
24 mars 2016 à 16:22
Bonjour, c'est encore moi :S

En faisant des test j'ai remarqué quelque chose que ne fonctionne pas comme prévu

Dans le fichier j'ai fais un exp. avec seulement l'item 45° x 2"

Item Matériaux Qté.
45° x 2" Som ABS 2
45° x 2" SomBNQ 2
45° x 2" Som ABS 2


j'obtiens dans la feuille Som ABS :

Item Matériaux Qté.
45° x 2" Som ABS 6

alors que je devrais obtenir 4,

ET

j'obtiens dans la feuille SomBNQ :

Item Matériaux Qté.
45° x 2" Som ABS 4

alors que je devrais obtenir 2,

Donc dès qu'il rencontre pour une première fois le matériaux, il va additionner toutes les qtés se trouvant sous cette ligne portant le même nom de l'item associé sans se soucier du matériaux

Si tu peux m'aider à corriger ça

Merci BEAUCOUP

https://www.cjoint.com/c/FCyplhvDFJ0
0