Bonjour à tous,
Je sais pas si il fallait plutôt poser la question dans conception ou pas:
Voilà ma question:
je cherche à calculer le délai moyen entre deux dates à plusieurs condition:
- que la date 2 en col K soit supérieure à la date 1 en col J (sinon ne pas compter car erreur de remplissage de cellule) pour info les date sont au format personnalisé dd/mm hh:mm
- que le numéro de semaine au format AAAAS (20152 par exemple) en cellule O2 de la feuille TdB soit égale au meme numéro de semaine de la colonne E de la feuille Liste
- Je veux faire tout ceci par macro et non pas pas formule pour gagner du temps lors de la sauvegarde du fichier car sinon c'est extremement long vu toutes les données.
Je ne sais pas trop par ou commencer... ceci sert à faire des indicateurs par semaine
j'ai commencé par ca mais la je bloque pour continuer .... Je crois que je suis même mal parti:
Merci de votre aide
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 DL_SUIVI = Workbooks("SUIVI_LOTS1.xls").Worksheets("Liste T&F").Cells(Rows.Count, 3).End(xlUp).Row + 1 Set K = ThisWorkbook.Worksheets("Liste").Range("A3:C54").Find(ThisWorkbook.Worksheets("TdB").Range("O2").Value, LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False) If Not K Is Nothing Then L = K.Row 'pour définir l'année/sem en cours de test End If montableau() = Workbooks("SUIVI_LOTS1.xls").Worksheets("Liste T&F").Range("A3:K" & DL_SUIVI).Value For j = 3 To L 'boucle sur les année/sem du TdB col 1 du début à l'année/sem en cours définit en range "O2" feuille tdb For i = LBound(montableau, 1) To UBound(montableau, 1) If Year(montableau(i, 5)) & DatePart("ww", montableau(i, 5)) = ThisWorkbook.Worksheets("Liste").Cells(j, 1).Value Then ' et la que faire pour calculer le délai moyen en heure de toutes les données du tableau qui remplissent la condition ci-dessus ' car en faisant une boucle pas moyen de calculer une moyenne avec worksheetfunction.average... End If Next i 'pprochaine boucle dans tableau ThisWorkbook.Worksheets("Liste").Range("C" & j).Value = moy 'on incrémente la moy (définir moy) Next j 'passe au la prochaine annne/sem Erase montableau 'réinitalise le tableau
Partager