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 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
| Sub Urgence3()
Dim u As Integer 'ligne pour le degré d'urgence
Dim j As Integer 'jour du planning
Dim c As Integer 'permet de donner la colonne de déplacement
Dim l As Integer 'donne la ligne où déplacer
Dim p As Single 'coef de correspondance
For p = 1 To 0 Step -0.1 'boucle proba
For j = 1 To 12 'boucle jours
l = 7
For u = 2 To 101 'boucle tâches
c = 3 * j + 11
If Worksheets("Planning").Cells(u, 6).Value = 3 And Worksheets("Planning").Cells(u, 5).Value <= Worksheets("hid_pla").Cells(4, c + 1).Value And Worksheets("Planning").Cells(u, 5).Value >= Worksheets("hid_pla").Cells(4, c + 1).Value * p And Worksheets("Planning").Cells(u, 7).Value = "" Then
'si l'urgence est à 3 et que la valeur de sa charge est inférieur à la charge disponible du jour j et supérieur à 0,9 et que absence de plannification
If Worksheets("Planning").Cells("", 6).Value = 3 And Worksheets("Planning").Cells("", 7).Value <> "" Then
Worksheets("Planning").Cells(u, 7).Value = j
Worksheets("Planning").Cells(u, 8).Value = l
'déplacement des valeurs id, charge et degré urgence
Worksheets("Planning").Cells(l, c).Value = Worksheets("Planning").Cells(u, 3).Value
Worksheets("Planning").Cells(l, c + 1).Value = Worksheets("Planning").Cells(u, 5).Value
Worksheets("Planning").Cells(l, c + 2).Value = Worksheets("Planning").Cells(u, 6).Value
l = l + 1
End If
Next 'u
Next 'j
Next 'p
End Sub |
Partager