XL 2013 Probléme de code VBA

GUYANAIS

XLDnaute Occasionnel
Bonjour,

J'ai une erreur de code dans le fichier en pièce jointe.
Je vous explique ce qu'il devrait se passer dans la macro qui est exécuté depuis le bouton en B1 de l'onglet RECAP METRO.
  1. Dans chacun des onglets de couleur bleu, j’extrais les valeurs de la colonne I que je met sous forme de tableau dans l'onglet RECAP METRO. Le tableau est inséré dans les colonnes de A à G.
  2. Depuis ce tableau je prends les données des colonnes A, C, D, E, F et G que je place dans l'onglet COUP RAP ANNEE. Les valeurs sont insérés dans les case de fond violette (mauve) des colonnes D, I, J, K, L, M.
Mon problème est que la dernière ligne (65) à remplir ne se fait pas dans l'onglet COUT RAP METRO. Le remplissage du document s'arrête à la ligne 64. POURQUOI?

Merci d'avance de votre aide.
 

Pièces jointes

  • 1-Couts moyens 2017 - V2 pour correction.xlsm
    1.4 MB · Affichages: 33

vgendron

XLDnaute Barbatruc
Hello

ouh laaaa.... dur de s'y retrouver dans ton code.. j'ai l'impression qu'il y a des boucles dans tous les sens..
je n'arrive pas à suivre son fonctionnement..

tu sembles avoir beaucoup de while end, juste pour trouver un emplacement..
ca pourrait se remplacer avec la fonction "find"

exemple de ta macro recherche
VB:
Sub recherche_ligne_rap()
With Sheets("Code").Range("LFormatage_RAP")
     Set ici = .Find(var_corps & var_grade, lookat:=xlWhole)
    If Not ici Is Nothing Then
        lignerap = ici.Offset(0, 1)
    End If
End With
   
'lignerap = 0
'recherchelignerap = 2
'    While recherchelignerap < 41
'            If (var_corps & var_grade) = Feuil16.Range("O" & recherchelignerap).Value Then
'                lignerap = Feuil16.Range("P" & recherchelignerap).Value
'            End If
'        recherchelignerap = recherchelignerap + 1
'    Wend
End Sub

avec LFormatage_RAP la zone nommée O2:p41 de ta feuille Code


ensuite.. il faudrait que tu expliques la méthodologie utilisée..

De ce que je vois
Pour chaque ligne de la feuille "SB Grade METRO"
tu copies les corps (OFG, CTA....) et les grades associés:
tu récupères les couts (colonne I) dans tous les onglets "bleus"
et tu fais aussi un calcul dans la feuille Cout Rap Annee.. ? Ce calcul ne peut il pas etre fait à la fin?
 

vgendron

XLDnaute Barbatruc
Bon.. je pense avoir à peu près compris le cheminement..
donc. voici une version 3 dans laquelle j'ai pas mal allégé le code et les allées et venues...

avec ceci. j'arrive normalement au meme résultat que toi. par contre; je ne vois toujours pas de quelle ligne 65 tu parles...?
 

Pièces jointes

  • 1-Couts moyens 2017 - V3.xlsm
    1.4 MB · Affichages: 19

GUYANAIS

XLDnaute Occasionnel
Merci Vgendron,

Je vois que le résultat est obtenu, la ligne 65 de la feuille COUT RAP ANNEE se remplie. Je te remercie de ton aide pour le code je vais essayer de le comprendre mais je suis pas super pro. C'est un collègue qui a été muté qui l'avait créé.
Tu l'auras certainement compris ce tableau est utilisé pour connaître le coup par grade et par corps de tous les personnels de mon institution.
Merci
 

Discussions similaires

Réponses
21
Affichages
331
Réponses
22
Affichages
689
Réponses
7
Affichages
292