TCD ou autre pour une feuille de présence journaliere

Bonjour,

Voila j'ai boucler ce que voulais faire grâce a l'aide ici mais me manque un résultat !!

J'aimerais que grâce au tableau d'inscription je puisse avoir soit un bouton

imprimer présence aujourd’hui ou imprimer présence demain par tranche d'age:

Sur cette feuille:

la colonne "nom prénom" les trois colonnes "allergie" la colonne de la date du jour qui montre donc uniquement les nom et prénom avec le 1 donc ceux qui sont inscrit.

Un peu comme si par exemple sur la première feuille "inscriptions" ont mettais les filtre ages 3 4 5 puis sur 6-juil le filtre 1

cela nous donnerais donc tous les enfants de la tranche d'age 3 à 5 inscrit ce 6 juillet ans mettre le reste des jours !!!

Cela permettrais de pas imprimer chaque jours l'ensemble du tableau mais uniquement ceux présent a la date du jour ou lendemain par tranche d'age !! oupss je ne sait pas si m'explique correctement !!!

je joins mon tableau et les trois feuille voudrais faire avec ces boutons !!

Merci par avance car je galère copieux alors suis presque au bout!!!

Bonjour, se code n'est valable que le jour j, vu que c'est un appel journalier et il est fonctionnel car je l'ai testé.

Option Base 1
Option Compare Text

Sub macro()
    Feuil1.Activate
    Dim a, b, c, d
    Dim dl&, i, j, n, k
    dl = Feuil1.Range("a5").End(xlDown).Row
    a = Feuil1.Range(Cells(4, 1), Cells(dl, 40))
    n = 0

    ReDim b(UBound(a), 6)
    ReDim c(UBound(a), 6)
    ReDim d(UBound(a), 6)

    For j = 11 To 40
        If CDate(a(1, j)) = Date Then
            For i = 1 To dl - 5
                If a(i, j) = 1 Then
                    Select Case a(i, 3)
                        Case Is < 5
                            n = n + 1
                            For k = 1 To 6
                                b(n, k) = a(i, k)
                            Next
                        Case Is >= 9
                            nn = nn + 1
                            For k = 1 To 6
                                c(nn, k) = a(i, k)
                            Next
                        Case Else
                            nnn = nnn + 1
                            For k = 1 To 6
                                d(nnn, k) = a(i, k)
                            Next
                    End Select
                End If
            Next
        End If
    Next
    With Feuil2
        .Cells.Delete
        .[a1:f1] = Feuil1.[a4:f4].Value2
        .[a2].Resize(UBound(b), 6) = b
    End With
    With Feuil6
        .Cells.Delete
        .[a1:f1] = Feuil1.[a4:f4].Value2
        .[a2].Resize(UBound(d), 6) = d
    End With
    With Feuil7
        .Cells.Delete
        .[a1:f1] = Feuil1.[a4:f4].Value2
        .[a2].Resize(UBound(c), 6) = c
    End With
    Feuil2.Activate
End Sub

Bonsoir,

Merci Force rouge pour ta réponse, pourrais tu développer la manière ou je peux mettre cela en œuvre vu la novice que je suis

je t'en remercie

Nadia

Sur la feuille inscription j'ai mis un bouton, vous ne pouvez pas le rater.

oui je viens d voir !!! c'est quasi ce que je voudrais wow !!! mais lorsque je modifie la première feuille donc que je désinscrit un enfant ou le rajoute par contre et que clique sur le bouton le rapport sur chaque feuille ne ce met pas a jour

Edit si autant pour moi avais enlever ma clef usb !!!

J'assaye de mettre le total en bas de ligne donc des présence ainsi que présence total avec une mise en forme qui bouge pas car je comprend rien au code hélas car pas dans mes pitchoune base pfff

et c'est top je te remercie vivement

Bonjour, je n'irai pas plus loin que ça.

Je te remercie beaucoup pour tout ca j'ai réussi pour la mise en forme !!

Si je peux te déranger juste une fois de plus ai ce que j'ai moyen d'adapter la macro

ou la copier coller afin de faire un bouton J+1 donc identique mais avec le lendemain ?

Je te remercie par avance et ai trouver vraiment un bon gros coup de main

Bien amicalement

Nadia

Dans la macro il faut remplacer

If CDate(a(1, j)) = Date Then
If CDate(a(1, j)) = Format(Date + 1, "dd/mmmm/yyyy") Then

Je te remercie beaucoup pour ta réponse et surtout pour l'efficacité !!!

Énorme merci

Nadia

j'ai oublié de préciser " Par " mais je pense que tu l'as compris donc la bonne formulation c'est la deuxième

    If CDate(a(1, j)) = Format(Date + 1, "dd/mmmm/yyyy") Then

Ton remerciement me touche car d'autres n'ont pas un vingtième de ta politesse...

Pour la peine j'ai rajouté une option que tu vas sûrement apprécier. Le choix de la journée par un calendrier. Le calendrier reste ouvert tant que tu n'as pas cliqué sur " fermer" et un seul clic sur un jour suffit pour consolider les données. Tu pourras donc selectionner tes jours à imprimer de façon plus intuitive..

il y a peu de chance qu'il y ait une erreur mais vérifie quand même la pertinence des résultats

Vu le tarif du respect et de la politesse et celui d'un prof perso remercier un cout de main me ruine pas et permet a ceux qui aide de le faire avec plaisir en sachant ne pas tomber sur des ingrats !!!! breff ........

Oui j'avais compris pour le code ça marche super je suis sur la mise en forme la il fait moins chaud mes neurones supportent !!!!

Merci en tout cas et bonne vacances si c'est ton cas Force rouge.

Nadia

Edit !!! wow pas réveiller j'avais pas vu le dernier message !!! je regarde ça avec mon café merci !!

Edit !!! Je viens de regarder ce nouveau bouton et serais exactement ce que je voudrais y'a juste que la fenêtre s'ouvre et tout

avec le bouton fermer la fenêtre mais la boite de dialogue est vide il n'y y'a pas le calendrier et me met "impossible de charger l'objet car il n'est pas disponible sur cette machine

Il est judicieux peu être que je te dise ma version de Excel qui est 2010 !!

Pour le calendrier...

Dans un premier temps dans excel vous appuyez sur alt et f11

1 vous double cliquez sur userform

2 En haut dans le menu outil, vous cliquez sur référence

3 vous cherchez microsoft calendar et vous le cochez s'il ne l'est pas. Vous validez tout l'orchestre vous fermez et enregistrez le classeur puis vous le re ouvré.

Si j'suis pas assez clair, y a d'autre lien que j'ai trouvé sur le net..

https://support.microsoft.com/fr-fr/kb/2676583/fr

Pour la mise en forme, faites un copié-collé d'une feuille que vous mettez dans un nouveau classeur avec le résultat voulu et je vous avancerai bien le travail.

Merci beaucoup à toi je regarde déjà pour ce fichier mscomct2.ocx car en plus je viens d'essayer les manip des liens mais suis trop crever rentre juste du boulot et demain oral et ecrit du BP JEPS donc vais me reposé et re attaque tout ca au retour demain apres midi !! une fois installer oui te ferais la feuille désirée .. merci pour le temps que tu passe pour tout ceci et bonne fin de soirée a demain

Nadia

Merde pour ton examen...J'attends ton retour

Et be coucou !!! bon une bonne et une mauvaise nouvelle !!!!

Réussi au la main ecrit et oral du BP JEPS et me voilà parti pour le 14 sept . !! ouf 1 an à travailler cela !!!

la mauvaise c'est que j'ai bien galèré pour installer mscal.ocx et MSCOMCT2.OCX mais pas moyen le calendrier reste vide et objet pas la je crise !!!

edit pour info je n'ai pas microsoft calendar 2007 moi après install des fichier ocx mais microsoft calendar control 8.0

Bonjour, content pour vous pour vos examens...Et vous avez activé le calendrier ms machin truc 8 ?

oui le calendar est activé en suivant vos liens j'ai réussi !! j'ai pas le data picker mais ceci sur l'image jointe

calendar

Bon alors dans se cas vous allez le faire vous même...

DAns l'éditeur vba là vous allez dans le menu affichage puis vous cliquez sur "Boite à outils" (voir photo).

Sur cette boite à outil qui va apparaitre (s'il n'apparait pas recliquez sur "boite à outils" il faut reperer un tout petit icone (qui doit être le dernier) que quand vous passez la souris dessus, il doit y avoir un nom du genre "calendar " ou "date picker". Une fois que vous l'avez, vous cliquez dessus puis vous allez dans votre userform pour déssiner un rectangle comme quand vous selectionnez plusieurs cellule...une fois que vous en serez là, vous m'enverrez un imprim écran du résultat et on verra comment on progressera

non malgré que la référence calendar soit cocher je n'ai pas ce dernier icône dans la boite a outil


par contre moi je suis passer par référence en vba pour déclarer calendar car sur ce lien ai suivi la manipulation

https://support.microsoft.com/fr-fr/kb/2676583/fr mais il me met a chaque fois le fichier ne contient pas de controle activex auto enregistré

calendar1
Rechercher des sujets similaires à "tcd feuille presence journaliere"