IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

IHM Discussion :

Planning pour la gestion des présences avec Mise en forme conditionnelle [AC-2016]


Sujet :

IHM

  1. #1
    Membre régulier
    Inscrit en
    Novembre 2007
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 187
    Points : 75
    Points
    75
    Par défaut Planning pour la gestion des présences avec Mise en forme conditionnelle
    Bonjour,

    j'aimerai à l'aide de cet exemple

    https://denishulo.developpez.com/tut...ss/planningv3/ Planningv2.4.mdb
    valider les demandes de congés.
    c est à dire que l'utilisateur va sasir ces congés. Ces congés doivent être validés

    Les demandes validées auront la couleur verte.

    J'y arrive pas. J'ai essayé mais en vain.

    Quelqu'un aurait t'il une idée à me proposer ?

    Merci

  2. #2
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut Ajout d'une mise en forme conditionnelle
    Bonjour,

    Il y a plusieurs choses à faire :

    1/ Créer une mise en forme conditionnelle avec fond vert pour les 31 zones de texte du planning, dans le sous-formulaire SF_Planning.

    Pour cela de la lecture :
    https://warin.developpez.com/access/mfc/

    (on redéfinira par la suite cette mise en forme de façon dynamique avec du code VBA)

    2/ Ajouter un champ "Valide" dans la table T_Presence


    3/ Dans la requête R_Presence, définir le champ Pres comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Pres: [CodeJ] & Car(13)+Car(10) & Car(13)+Car(10) & VraiFaux(Pas (Nz([Valide];0));"Validé";"")

    * La suite de caractère Car(13)+Car(10) permet de faire un saut de ligne pour que le terme "Validé" apparaisse caché sur le planning



    4/ Ajouter du code sur ouverture du sous-formulaire ayant pour but de redéfinir la mfc en fonction du terme "validé", s'il est présent ou pas dans les cases du planning :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub Form_Load()
    Dim j As Long
     
    For j = 1 To 31 ' On parcourt les 31 zones de texte
        Me("Jour" & j).FormatConditions.Item(0).Modify acExpression, , "InStr([" & j & "],'Validé')<>0" ' Si le terme "Validé" est présent dans la zone de texte "JourJ" on la colorie en vert
        Me("Jour" & j).FormatConditions.Item(0).BackColor = vbGreen    
    Next j
     
    End Sub
    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  3. #3
    Membre du Club
    Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2010
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2010
    Messages : 67
    Points : 50
    Points
    50
    Par défaut
    Salut
    mon post ne répond pas a ta demande
    Et cela dépend aussi de l avancement de ton projet...pour info:
    tu peux regarder ici ou il y a un exelent tuto avec un planning de stages et de salles de réunions
    https://jeannot45.developpez.com/art...tionplanningv1

    Je m en suis basé pour faire un planning de gestion de taches

  4. #4
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Citation Envoyé par fabrice57100 Voir le message
    Salut
    mon post ne répond pas a ta demande
    Et cela dépend aussi de l avancement de ton projet...pour info:
    tu peux regarder ici ou il y a un exelent tuto avec un planning de stages et de salles de réunions
    https://jeannot45.developpez.com/art...tionplanningv1

    Je m en suis basé pour faire un planning de gestion de taches
    Bonjour,

    Mes plannings ne te conviennent pas

    Pour info, j'ai aidé récemment un membre pour mettre en place un planning basé sur mon tutoriel :

    Conception outil gestion horaire personnel

    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  5. #5
    Membre régulier
    Inscrit en
    Novembre 2007
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 187
    Points : 75
    Points
    75
    Par défaut
    bonjour,
    si, ton post répond à ma demande. C est juste qu' àpres avoir fait ce que tu m'as dit, ça a créé un autre problème, lequel j'essaie de resoudre en vain.

    Au fait je represente les presences non pas par J mais par un chiffre. et puis je calcule la somme de présence par jour (Par colonne) .
    Bah après avoir ajouté "validé" dans la case , c'est plus possible de calculer la somme par jour. ça me renvoie "erreur".
    Peux tu m'aider?


    Merci

  6. #6
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Bonjour,

    As-tu essayé avec la fonction Val() qui renvoie le nombre qui commence la chaîne de caractères :

    exemple :

    Val("4 Validé") renvoie 4
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  7. #7
    Membre régulier
    Inscrit en
    Novembre 2007
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 187
    Points : 75
    Points
    75
    Par défaut
    Bonjour,

    je viens d'essayer avec Val() et ça ne marche toujours pas.
    je pense que c est du au fait qu 'il n ' y a pas que des chiffres dans les cases du planning mais aussi les V, C et des cases vides. Or Val() c est seulement pour les chiffres.
    Si tu as une autre idée, je la prends.

    Merci

  8. #8
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Bonjour,

    Il faudrait mettre un vraifaux (iif) pour filtrer ces cas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =Somme(iif(([1]="V") or ([1]="C") or ([1]="");0;Val([1]))
    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  9. #9
    Membre régulier
    Inscrit en
    Novembre 2007
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 187
    Points : 75
    Points
    75
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =Somme(iif(([1]="V") or ([1]="C") or ([1]="");0;Val([1]))
    ne marche pas. La somme me sort toujours "#erreur".

    Merci

  10. #10
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Bonjour,

    Essayez comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =Somme(iif((Left([1];1)="V") or (Left([1];1)="C") ;0;Val([1]))
    Pouvez-vous me donner la liste des caractères susceptibles d'apparaître dans les cases du planning ?

    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  11. #11
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Une autre possibilité serait d'utiliser une fonction de domaine, pour mettre à jour dynamiquement les totaux en dessous du planning :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    Sub MajPlanning()
     
    ...
     
    DateJ = DateSerial(Forms!F_Planning!Annee, Forms!F_Planning!Mois, 1)
     
    for j=1 to 31
     
    ...
     
    s = DSum("Val([CodeJ])", "T_Planning", "(DateJour=" & FDateUs(DateJ) & ") and (InStr([CodeJ],'V')=0) and (InStr([CodeJ],'C')=0)")
     
    Forms!F_Planning!SF_Planning.Form("Tot" & j).Value = s
     
    DateJ=DateJ+1
     
    next j
     
    ...
     
    end sub
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  12. #12
    Membre régulier
    Inscrit en
    Novembre 2007
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 187
    Points : 75
    Points
    75
    Par défaut
    Bonjour,

    voilà la liste des caractères susceptibles d'apparaître dans les cases du planning:
    C, V, Validé, "".

    Merci

  13. #13
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Bonjour,

    Postez votre base ce sera plus simple pour moi.

    Merci,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  14. #14
    Membre régulier
    Inscrit en
    Novembre 2007
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 187
    Points : 75
    Points
    75
    Par défaut
    Bonjour,
    voilà la base de données.

    Merci
    Fichiers attachés Fichiers attachés

  15. #15
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Bonjour,

    J'ai mis à jour votre pièce jointe.

    J'ai utilisé du code pour mettre à jour dynamiquement les totaux en bas du sous-formulaire SF_Planning (cf. procédure MajPlanning).

    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  16. #16
    Membre régulier
    Inscrit en
    Novembre 2007
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 187
    Points : 75
    Points
    75
    Par défaut
    Merci beaucoup

  17. #17
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Citation Envoyé par kesamba Voir le message
    Merci beaucoup
    Pas de souci, je clos le sujet
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  18. #18
    Membre régulier
    Inscrit en
    Novembre 2007
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 187
    Points : 75
    Points
    75
    Par défaut
    Bonjour,

    escusez moi de reouvrir momentanement le sujet. J 'ai une question à vous poser.
    pourquoi la formule ci ne fonctionne pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =Somme(iif((Left([1];1)="V") or (Left([1];1)="C") ;0;Val([1]))
    .

    Est ce que c est possible de faire la somme sans passer une fonction de domaine. Je la trouve trop lourde.

    Merci

  19. #19
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Bonjour,

    Il faudrait exclure aussi les cas ou les cases sont vides et prendre aussi 0 pour ces cas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =Somme(VraiFaux((Gauche([1];1)="V") Ou (Gauche([1];1)="C") Ou Nz([1];"")="";0;Val([1])))
    La formule avec la fonction de domaine permet de mettre à jour les totaux dynamiquement sans avoir à le faire manuellement.

    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  20. #20
    Membre régulier
    Inscrit en
    Novembre 2007
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 187
    Points : 75
    Points
    75
    Par défaut
    Merci.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 17
    Dernier message: 25/11/2020, 13h19
  2. [Toutes versions] Planning pour la gestion des présences en entreprise
    Par kesamba dans le forum IHM
    Réponses: 17
    Dernier message: 14/10/2018, 20h40
  3. [XL-2010] PLANNING AVEC MISE EN FORME CONDITIONNELLE
    Par oscar57 dans le forum Excel
    Réponses: 0
    Dernier message: 06/11/2013, 23h56
  4. [AC-2003] probleme avec Planning pour la gestion des présences en entreprise
    Par kesamba dans le forum VBA Access
    Réponses: 19
    Dernier message: 30/10/2010, 22h06
  5. Soucis avec mise en forme conditionnelle
    Par icecube216 dans le forum Access
    Réponses: 4
    Dernier message: 04/09/2006, 17h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo