Voici pour la gestion des feuilles par éléve
Je recherche tous les eleves etant present dans la liste_eleve
Je regarde si une feuille ayant ce nom existe deja
Si non il l'a crée sur la base d'une feuille modèle.
Il faut donc prendre la fiche d'un eleve et de la renommer Fiche_Modele_Eleve
Sub Maj_Feuille_Releves()
' ************** Partie Création de fiches **************
'recherche derniere ligne
derlig = Sheets("Liste élève").Cells(Cells.Rows.Count, "A").End(xlUp).Row
'je recherche toutes les lignes non vides qui contienent un nom d'eleve
For Each c In Sheets("Liste élève").Range("A3:A" & derlig)
If c <> "" Then
nom = c.Value
'je verfie si une feuille existe deja
If Not FeuilleExiste(ThisWorkbook, nom) Then
'si n'existe pas je la crée
Sheets("Fiche_Modele_Eleve").Copy Before:=Sheets("Fiche_Modele_Eleve")
ActiveSheet.Name = nom
End If
End If
Next c
MsgBox "MAJ Terminée"
End Sub
Function FeuilleExiste(wk As Workbook, nom) As Boolean
On Error Resume Next
FeuilleExiste = Not (wk.Sheets(nom) Is Nothing)
End Function