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:
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.
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
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
Partager