VBA - Ajouter dans cellule, valeur du tableau en mémoire
Bonjour à tous,
Merci tout d'abord de votre aide.
Ce que je dois faire est difficile à expliquer et je n'ai pas le choix: je dois le faire en vba et avec la procédure indiquée dans les différentes étapes ci-dessous.
Je me permets donc d'envoyer mon fichier test en pièce jointe afin de mieux me faire comprendre (code en module 1) .
Voici donc concrètement ce que je dois faire et là où je bloque (en rouge dans les explications ci-dessous).
ETAPE 1: Récupérer les articles se terminant par /465-02
1. Dans la feuille Sim RO, parcourir tous les articles en colonne A. Retrouver les articles se terminant par /465-02 et dont le service = "PERS" (en colonne B).
2. Copier ces articles se terminant par /465-02 dans la feuille Para-RH-2018 en colonne B à partir de la ligne 3001.
3. Dans les colonnes C,D,E,F,G,H : initialiser les cellules à 0.
ETAPE 2: Chaque article se terminant par /111-02 génère un article 33/465-02
4. Dans la feuille Para-RH-2018, Parcourir tous les articles (à partir de A4 jusque la fin de ce tableau) et reprendre tous les articles dont la colonne B = "TOTAUX :" et dont les articles en colonne C se terminent par /111-02
5. Chaque valeur en colonne BJ de ces articles se terminant par /111-02 doit être ajoutée à l'article correspondant dans mon tableau créé à partir de la ligne 3001.
exemple: l'article 104/111-02 a pour valeur 76973,71 en colonne BJ. Cette valeur doit être ajoutée à la valeur de l'article 10433/465-02 en colonne C.
6. Faire de même avec les colonnes BK à BO vers les colonnes D à H du tableau créé à partir de la ligne 3001.
ETAPE 3: Chaque article se terminant par /111-01 génère un article /465-02
7. Dans la feuille Para-RH-2018, Parcourir tous les articles (à partir de A4 jusque la fin de ce tableau) et reprendre tous les articles dont la colonne B = "TOTAUX :" et dont les articles en colonne C se terminent par /111-01
8. Chaque valeur en colonne BJ de ces articles se terminant par /111-01 doit être ajoutée à l'article correspondant dans mon tableau créé à partir de la ligne 3001.
exemple: l'article 421/111-01 a pour valeur 20588,4 en colonne BJ. Cette valeur doit être ajoutée à la valeur de l'article 421/465-02 en colonne C.
9. Faire de même avec les colonnes BK à BO vers les colonnes D à H du tableau créé à partir de la ligne 3001.
ETAPE 4: Chaque article se terminant par /121-48 génère un article /465-02
10. Dans la feuille Para-RH-2018, Parcourir tous les articles (à partir de A4 jusque la fin de ce tableau) et reprendre tous les articles dont la colonne B = "TOTAUX :" et dont les articles en colonne C se terminent par /121-48
11. Chaque valeur en colonne BJ de ces articles se terminant par /121-48 doit être ajoutée à l'article correspondant dans mon tableau créé à partir de la ligne 3001.
exemple: l'article 421/121-48 a pour valeur 20588,4 en colonne BJ. Cette valeur doit être ajoutée à la valeur de l'article 421/121-48 en colonne C.
12. Faire de même avec les colonnes BK à BO vers les colonnes D à H du tableau créé à partir de la ligne 3001.
Je sais que je dois apporter des améliorations au code (dont déclarer toutes les variables) mais je doute que le problème que je rencontre soit à ce niveau-là.... Enfin, étant débutante en vba, je me trompe peut-être?
Ce qui m'étonne, c'est que l'étape 3 et l'étape 4 sont identiques à l'étape 2 . Pourtant, en étape 2, tout fonctionne dans mon code.
Pour info, dans mon code, j'ai inséré ce bout de code-là afin de vérifier plus facilement les informations. Mais il sera enlevé une fois mon travail fini:
If Not IsEmpty(b) Then Sheets("Para-RH-2018").[C2988].Resize(UBound(b), UBound(b, 2)) = b Merci par avance pour votre aide.