VBA Fusionner des lignes en additionnant leurs valeurs

Bonjour à tous,

J'apporte les dernières modifs à mon tableur et j'ai laissé de côté une dernière problématique car je ne vois pas comment m'y prendre, j'ai beau parcourir les précédents topics d'aide, mais même fort de ces exemples, je ne parviens pas à compiler quelque chose.

C'est un classeur de gestion des stocks, une macro présente sur une feuille entrée et une autre pour la feuille sortie va inclure les entrées/sorties dans ma feuille "stocks". Je tiens à garder sur celle-ci toutes les lignes, afin de conserver un historique. Sur la feuille stocks une fonction tri va classer par ordre alphabétique les entrées/sorties donc normalement les opérations concernant un même produit doivent se situer les unes après les autres dans l'ordre historique.

Sauf que, afin de pouvoir consulter l'état du stock d'un produit, il me faudrait une autre feuille "état du stock" qui elle, contrairement à la feuille "stocks", compile les opérations d'un même produit faisant les +/- dessus. J'ai fais une macro pour que la feuille "stocks" soit recopiée sur une feuille "etat stocks" (ma fonction sub initialize dans l'indexation) ; mais je ne vois pas comment aboutir l'idée : faire en sorte que la macro détecte les références identiques en colonne A, pour n'en faire qu'une ligne (j'évite le terme fusionner vu que les topics d'aide mentionnés ci-dessus disent qu'en VBA il vaut mieux éviter de fusionner des lignes), et qu'en colonne B soit donnée l'addition de leurs entrées/sorties.

Mes excuses pour la longueur de la chose, ça fait vraiment «faites mes devoirs» mais j'y ai mis ma meilleure volonté, je ne vois pas comment avancer, je ne vois même pas quelle fonction utiliser pour ce faire...

PJ: le tableur que j'ai commis.

Bonjour,

Sans chercher loin (neurone en panne) et sans vba , pourquoi pas un TCD ?

Il fera la somme des produits de ton stock ( ici 1 bavoir orange / -2 jean blanc) ...

P.

Mais un TCD ne s'actualise pas de lui-même à chaque entrée/sortie, si ?

C'est comme faire un graph, c'est une opération manuelle qui se réalise à l'instant "t" où on le lance, je me trompe ?

(d'autant, que plus c'est automatisé mieux c'est vu les personnes qui auront à s'en servir par la suite, c'est impossible de leur demander de faire un TCD quand déjà j'ai de bonnes raisons de douter qu'ils sachent faire un graphique basique )

re,

pour l'actualisation c'est possible ou en ajoutant dans le code de la feuille (clic droit sur onglet-visualiser le code):

Private Sub Worksheet_Activate()
ThisWorkbook.RefreshAll
End Sub

fichier à sauver alors " . XLSM"

et au besoin , pour faire simple encore une fois, tu fais ton tcd sur les 5000 premières lignes et tu décoches "vides" dans les produits du tcd, il y a d'autres manières bien sur

P.

Bonjour Cricri19,

Salutations patrick1957,

Une autre proposition avec utilisation d'un dictionnaire pour renseigner la ComboBox "ChoixFUT" de l'USF "CONSULT" et la feuille "ETAT STOCKS".

La consultation produit affiche le stock final.

Par contre, dans la feuille "STOCKS" je remarque que certains produits peuvent avoir un libellé identique et une référence différente (TISSU ROUGE par exemple avec SAISIE2 et REF5). Si tel est le cas, il ne faut pas prendre le libellé produit pour établir la liste.

A+

Merci beaucoup à tous deux !

Effectivement je m'en tire bien avec le TCD, je m'attendais à devoir pondre une usine-à-gaz dans laquelle j'aurais été le 1er à me perdre dans sa rédaction, là c'est rapide, pratique et peu complexe, c'est parfait.

Rechercher des sujets similaires à "vba fusionner lignes additionnant leurs valeurs"