Bonjour à vous tous, ddept88 en particulier!
J'ai besoin de savoir s'il y a moyen de dire dans le code de ce fichier que j'aimerais avoir 25 lignes de présences même s'il n'y a pas de noms inscrits dans la feuille. Simplement que les lignes soient vierges et que à mesure qu'on rajoute des noms les lignes de présences se remplissent.
Option Explicit
Sub CompletePresence()
Application.EnableEvents = False
Dim NbM, c, i, j, col As Integer
Dim jour As String
Feuil2.Unprotect ' déprotège la feuille
jour = Format(Feuil2.Range("F2").Value, "dddd")
NbM = Feuil1.Range("B" & Rows.Count).End(xlUp).Row
Feuil2.Range("B4:R28" & NbM).ClearContents
c = 4
' recherche et écriture
On Error Resume Next
col = Feuil1.Range("O1:U1").Find(what:=Feuil2.Range("C1").Value).Column
For j = 2 To NbM
If Feuil1.Cells(j, col).Value = Feuil2.Range("C1") Then
' ecriture des coordonées des personnes disponible ce jour
Feuil2.Cells(c, "B") = DateDiff("m", Feuil1.Cells(j, "C").Value, Now)
Feuil2.Cells(c, "C") = UCase(Feuil1.Cells(j, "B").Value) & ", " & Feuil1.Cells(j, "A").Value ' Nom de l'enfant
Feuil2.Cells(c, "D") = Feuil1.Cells(j, "F").Value ' Tuteur
Feuil2.Cells(c, "E") = Feuil1.Cells(j, "L").Value 'Téléphone
If Feuil1.Cells(j, "E").Value <> "" Then
Feuil2.Cells(c, "R") = "X" 'Allergie
End If
c = c + 1
End If
Next j
Application.EnableEvents = True
Feuil2.Protect 'protège la feuille
End Sub
Ça doit se passer sûrement avant le "End If" peut-être après le c = c+1 il faudrait donc qu'il y ait des cases mais vides jusqu'à la ligne 28.
En fichier joint un exemple de la feuille que j'ai fait manuellement en ôtant la protection.
Merci pour votre aide.
Ce fichier a été utilisé à la dernière session de la bambinerie et ce fut fort apprécié, contente qu'il puisse être réutilisé à l'avenir.