XL 2010 créer un registre d'appel numerique

ATHE RIOVELI

XLDnaute Occasionnel
Bonjour le Forum,
Tout d'abord, je vous présente toutes mes excuses pour ce long moment d'absence due à mon état de santé très fragile.
Je viens vers vous, une fois de plus, afin vous m'aidiez à concevoir à l'aide de macros, un cahier d'appels numérique.
je vous explique le principe :
En côte d'ivoire, l'année scolaire est divisée en 3 trimestres.
Pour chaque semaine, on fait le point des heures d'absences des élèves jusqu'à la fin du trimestre.
La lettre "A" inscrite dans une cellule du registre indique que l'élève est absent.
Lorsque ce dernier est présent, la cellule est vide.
Chaque trimestre dure en moyenne 3 mois. Le premier débute en septembre.
Voici ici joint, un exemple pour une semaine de cours.
 

Pièces jointes

  • CAHIER D'APPELS.xlsm
    45.3 KB · Affichages: 169

ATHE RIOVELI

XLDnaute Occasionnel
BONSOIR job75,
Ok ce fichier est parfait.
Je suis vraiment déçu que décidez d’arrêter là.
Il ne reste vraiment plus grand chose.
L'objectif final de ce registre est de calculer la moyenne de conduite des apprenants ( les élèves).
Alors je vous demande juste une avant dernière chose.
Regarder ce fichier , je souhaite que, les noms des élèves saisis se retrouvent automatiquement au niveau des feuilles trim 1 trim2 , trim 3 et bilan.
Le reste je vais essayer.
MERCI pour votre compréhension.
A+
 

Pièces jointes

  • CAHIER D'APPELS(6 bis).xlsm
    273.5 KB · Affichages: 47

job75

XLDnaute Barbatruc
Bonsoir ATHE RIOVELI,

C'est vrai que ce n'est apparemment vraiment pas grand chose, voyez ce fichier (7) et le code :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [D2,F2]) Is Nothing Then Exit Sub
[Date_debut] = [D2]: [Date_fin] = [F2] 'pour le calcul des heures d'absence
[A13:B13].Resize(100) = Feuil1.[A15:B15].Resize(100).Value
[C13].Resize(100) = [Date_debut].Offset(4).Resize(100).Value
End Sub
Il faudrait en fait des choses bien plus compliquées, mais aucune envie de m'y plonger.

A+
 

Pièces jointes

  • CAHIER D'APPELS(7).xlsm
    282.5 KB · Affichages: 77
Dernière édition:

ATHE RIOVELI

XLDnaute Occasionnel
RE BONSOIR job75,
Ce que vous avez fait est parfait, vous avez même ajouté des éléments sur les feuilles trim1, trim2 et trim3.
S'ils vous plait, encore un soucis :
lorsque j'entre des noms sur la première feuille, les noms ne sont pas automatiquement reportés au niveau de trim1, trim2, trim3 et bilan. il faut pourtant que cela soit pour éviter que les éducateurs saisissent à chaque les noms pour un trimestre quelconque.
s'ils vous plait, régler d'abord ce problème.
MERCI
A+
 

job75

XLDnaute Barbatruc
Bonjour ATHE RIOVELI,

Il serait facile de mettre à jour les feuilles des trimestres chaque fois qu'on les active en y ajoutant :
Code:
Private Sub Worksheet_Activate()
Worksheet_Change [D2]
End Sub
Mais vous n'avez pas compris qu'alors les entrées manuelles en colonnes D:H du tableau ne seront plus forcément sur les lignes des noms d'origine puisque le tableau source est trié.

Pour cette raison les dates du trimestre (D2 et F2) ne doivent être entrées qu'une seule fois, à la fin du trimestre, quand on est sûr que toutes les absences ont bien été entrées dans le tableau source.

Bonne journée.
 

job75

XLDnaute Barbatruc
Re,

Si vous tenez à ce que les feuilles des trimestres soient mises à jour on peut éventuellement utiliser :
Code:
Private Sub Worksheet_Activate()
Dim i%
[Date_debut] = [D2]: [Date_fin] = [F2] 'pour le calcul des heures d'absence
If Application.Sum([D13.F13].Resize(100)) Then
  For i = 1 To 100
    If Feuil1.Cells(i + 14, 2) <> Cells(i + 12, 2) Or [Date_debut].Offset(i + 3) <> Cells(i + 12, 3) Then _
      If MsgBox("Attention la feuille source a été modifiée, faut-il vraiment mettre à jour le trimestre ?", 4) = 6 _
        Then Exit For Else Exit Sub
  Next
End If
[A13:B13].Resize(100) = Feuil1.[A15:B15].Resize(100).Value
[C13].Resize(100) = [Date_debut].Offset(4).Resize(100).Value
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [D2,F2]) Is Nothing Then Worksheet_Activate
End Sub
Fichier (8).

A+
 

Pièces jointes

  • CAHIER D'APPELS(8).xlsm
    294 KB · Affichages: 86
Dernière édition:

ATHE RIOVELI

XLDnaute Occasionnel
BONSOIR job75,
MERCI pour cette précision.
Seulement, les utilisateurs de ce fichier sont des personnes qui n'ont pas grande connaissance en informatique.
C'est donc pour cela que je souhaiterai qu'on mette à leur disposition un fichier avec lequel ils n'auront pas à fournir assez d'efforts.
Je souhaiterais que vous pussiez vous mettre dans la peau d'un novice en informatique qui utilise ce fichier.
A la rentrée scolaire nous avons une liste de la classe. Ce sont les noms de cette liste que nous devons entrer dans la première feuille; ces noms devront aussi se retrouver automatiquement dans les feuilles trim et bilan.
C'est ce je vous demande pour le moment afin de pouvoir avancer.
MERCI
A+
 

Discussions similaires

Statistiques des forums

Discussions
312 391
Messages
2 087 948
Membres
103 682
dernier inscrit
Thomas23