Bonjour à tous,
Voila je cherche à faire quelque chose de relativement simple je pense. Seulement n'ayant aucune notion en VBA, j'ai du mal à faire proprement ce que je veux.
Je dis proprement car j'ai réussi à faire ce que je voulais ... mais pas élégamment ... D'où mon message.
J'ai deux variables RANGE ressources et durees
Je parcours ressources grâce à une boucle For Each ... Next
A chaque itération j'ai un compteur qui me tient informé de combien d'itération j'ai fait : compteur
Ma question est la suivante :
Comment, à un instant t, accéder directement à la cellule compteur de ma variable durees ? (dans le but ensuite de récupérer la valeur de cette cellule).
Comme parfois un bout de code vaut mieux qu'un long discours, en gros voila ce que j'ai mais que je voudrais plus élégant :
En gros j'aimerais ne pas avoir à construire ce premier tableau ...
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 Function CalculTempsRessource(CodeReference As Integer, CodeRessource As Range, Duree As Range) As Variant ' On pourrait nettement mieux faire ' mais je ne sais pas comment faire ' pour accéder directement à un élement ' de Range ' ' Je continue à chercher ! Dim i As Integer Dim temps() As Double ReDim temps(0 To Duree.Count - 1) CalculTempsRessource = 0 i = 0 For Each Cell In Duree temps(i) = Cell.Value i = i + 1 Next Cell i = 0 For Each Code In CodeRessource If Code.Value = CodeReference Then CalculTempsRessource = CalculTempsRessource + temps(i) End If i = i + 1 Next Code End Function
Merci d'avance à quiconque m'aidera !
Partager