Sub enregistreroct01()
Sub enregistreroct01()
'==> Déclaration des variables utilisées dans les boucles.
Dim i, j, Rep
' Boucle de programme servant à balayer les 8 lignes du tableau d'apprenant, de 0 à 7 soit 8 lignes.
For i = 0 To 7
' Si la cellule "D8 + i" donc D8 puis D9 puis D10...puis D15 n'est pas vide (Elle contient le nom d'un apprenant)
' Pour cela, on se décale de i lignes par rapport à D8.
If Not IsEmpty(Range("D" & 8 + i)) Then
' On sélectionne la dernière cellule vide de la colonne G, dans la feuille qui porte le nom de l'apprenant
' auquel i fait référence. Pour cela, on se positionne en F10000 dans la feuille de l'apprenant puis on remonte
' à la dernière cellule occupé (idem <CTRL> + <HAUT>) puis on se décale d'une cellule vers le bas et une vers la droite.
' Dans la cellule ainsi identifiée, on place la valeur de K15 du tableau récapitulatif, c'est à dire le pourcentage.
Sheets(Range("D" & 8 + i).Value).[F10000].End(xlUp).Offset(1, 1) = Range("K15")
' Boucle de programme servant à balayer les 8 lignes du tableau de modules suivis, de 0 à 7 soit 8 lignes.
For j = 0 To 7
' En fonction des cases à coher, on vient renseigner la fiche de l'apprenant. Si la case est cochée, alors
' il y a la valeur VRAI dans la colonne L du tableau récapitulatif. Donc si la valeur de la ligne 8 + j
' dans la colonne L est vraie alors on renseigne le module suivi.
' on pourrait utiliser la notation suivante : "If Range("L" & 8 + j) = True Then _"
If Range("L" & 8 + j) Then _
' On sélectionne la dernière cellule vide de la colonne F, dans la feuille qui porte le nom de l'apprenant
' auquel i fait référence. Pour cela, on se positionne en F10000 dans la feuille de l'apprenant puis on remonte
' à la dernière cellule occupé (idem <CTRL> + <HAUT>) puis on se décale d'une cellule vers le bas.
' Dans la cellule ainsi identifiée, on place la valeur de H8 + j du tableau récapitulatif, c'est à dire le.
' nom du module suivi si ce module est coché.
Sheets(Range("D" & 8 + i).Value).[F10000].End(xlUp).Offset(1, 0) = Range("H" & 8 + j)
' On passe au module suivant
Next
' Fin de la condition si cellule "D8 + i" non vide
End If
' On passe à l'apprenant suivant
Next
' Petite boite message pour indiquer que tout c'est bien passé.
Rep = MsgBox("Enregistrement effectué", vbOKOnly, "Enregistrement")
End Sub