Bonjour,

Je m'essaie à la programmation dans VBA, et j'ai un problème d'affichages de variables dans ma feuille de calcul. J'ai cherché une solution sur le net, et je n'ai pas trouvé de solution qui fonctionne. Je m'explique: j'ai créer un fichier avec macros pour faire un suivi d'échéances. Le but, c'est de créer un fichier qui par la suite enverra une alerte par mail en cas d'échéance arrivées à expiration. La macro permettant d'envoyer par mail est trouvée et fonctionne. Je l'ai prise d'un collègue, et sait qu'elle fonctionne. J'ai réussi à créer la macro qui permet de créer un onglet, et qui nomme ce dernier automatiquement, les formules sont bonnes, tout fonctionne.
Mon problème se situe sur l'onglet principal qui doit être une synthèse des échéances arrivées à expiration. J'arrive à générer le nom de l'échéance dans la bonne colonne. Ce que je n'arrive pas, au final, c'est faire référence à une donnée présente dans chaque onglet. J'ai mis le fichier en pièce jointe.
Dans l'onglet Suivi échéances, à partir de la cellule B7, les noms des échéances à suivre se génèrent automatiquement dès que ma macro Nouvelle échéance est activée. J'ai besoin que dans la cellule C7, le résultat de la cellule P3 s'incrémente. J'ai essayé cette macro:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Sub Suivi()
 
    Dim CelluleCourante As Variant
    Dim CelluleSuivante As Variant
    Dim Echeancecourante As Variant
    Dim Echeancesuivante As Variant
    Dim Numfeuilles As Byte
    Numfeuilles = (Worksheets.Count - 1)
 
        Range("B7:B40").Select
 
    For Each CelluleSuivante In Selection
        For Compteur = 1 To Numfeuilles Step 1
 
 
            CelluleCourante = Worksheets("Index échéances").Cells(6, 2).Value
            CelluleSuivante = Worksheets("Index échéances").Cells(6 + Compteur, 2).Value
            Echeancecourante = Worksheets("Index échéances").Cells(6, 3).Value
            Echeancesuivante = Sheets(1 + Compteur).Cells(3, 16).Value
 
                If CelluleSuivante = Sheets(1 + Compteur).Cells(2, 11).Value Then
                Echeancesuivante = Sheets(1 + Compteur).Cells(3, 16).Value
                End If
        Next Compteur
    Next CelluleSuivante
 
End Sub
Quand je lance le Pas-à-pas détaillé, les variables prennent le bon résultat au fur et à mesure du déroulement de la macro. Cependant, le résultat ne s'écrit pas dans les cellules à partir de C7.

Quelqu'un aurait une solution à me proposer? J'ai essayé beaucoup de choses, et je suis consciente que cette manipulation pourrait se faire "à la main". Mais c'est pour mon boss, et l'idée est que tout soit automatisé. Avec le planificateur, le fichier s'ouvrira, etc...

Merci beaucoup par avance...

Anne-Charlotte

SUIVI DES ECHEANCES.xlsm