XL 2016 Tableau dynamique excel qui commence toujours par un jour ouvré et ce termine par le dernier jour du mois

math10

XLDnaute Nouveau
Bonjour,

Tout d'abord merci pour ce super forum.

Alors voila mon problème, j'ai créer un tableau dynamique pour ma conjointe car elle est ass mat et je bloque pour terminer ce tableau.
J'aimerai que le premier jour du tableau suivant le mois sélectionné ne tombe jamais sur un samedi ou dimanche et commence toujours par le premier jour ouvré du mois. Notamment pour les 2 tableaux pour les 2 personnes différentes.

Et j'aimerai que le tableaux s'arrête toujours à la fin du mois donc le 28 pour février ou le 30 ou 31 pour les autres mois.
Je ne connais absolument pas les macro et si il est possible de faire sans je préféré.

Pouvez-vous m'aider svp ?
Je vous ai joint le tableau en PJ

Cordialement,
 

Pièces jointes

  • Fiche de présence.xlsx
    47.3 KB · Affichages: 23

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Vous trouverez en Cellule A6 de la feuille 'LOUKAS' cette formule tirée jusqu'à la ligne 28: =SI(MOIS(SERIE.JOUR.OUVRE(DATE(REGLAGES!$I$9+2018;REGLAGES!$H$9;0);LIGNE(1:1)))=REGLAGES!$H$9;SERIE.JOUR.OUVRE(DATE(REGLAGES!$I$9+2018;REGLAGES!$H$9;0);LIGNE(1:1));"")

Date(Année a; mois n; 0) renvoie le dernier jour du mois n-1

Cette formule calcul le premier jour ouvré après le dernier jour du mois précédent sélectionné et lui ajoute 1 à chaque ligne.
Dans un tableau structuré excel vous avez intérêt à conserver la même formule de la cellule 1 d'une colonne à la dernière sous peine que vos formules soient écrasées par inadvertance; Les tableaux structurés sont fait pour uniformiser et les formules, la présentation, l'utilisation et autres joyeusetés.

Autre petit conseil : nommez les cellules importantes pour rendre plus lisibles à vos utilisateurs* vos formules. Par exemple REGLAGES!I9 pourrait s'appeler "Index.Annee" et REGLAGES!H9 "Index.Mois". Ou en plus précis "Selection.Index.Mois "Selection.Index.Annee"

* même ignorants ou néophytes d'excel.

Bon dimanche
 

Pièces jointes

  • Fiche de présence.xlsx
    48.9 KB · Affichages: 6

Hasco

XLDnaute Barbatruc
Repose en paix
Re,

De retour. Quelle erreur?
Si la date ne s'affiche pas c'est qu'elle n'est soit pas dans le mois soit qu'elle n'est pas un jour ouvré.

Novembre 2019 le 30 tombe un samedi (non ouvré) donc la formule s'arrête au 29


Par contre l'erreur #Valeur! qui apparait dans la colonne entretien vient du fait que dans la colonne Durée vous avez :
=SI([@Date]="";"";([@Départ]-[@Arrivée]))
et dans la colonne Entretien: =SI([@Durée]=0;0;MAX(2,65;[@Durée]*0,3422))
Alors que la formule de durée ne peut retourner 0 mais ""

Dans la colonne Entretien mettez: =SI([@Durée]="";0;MAX(2,65;[@Durée]*0,3422))
OU
Dans la colonne Durée mettez: =SI([@Date]=0;"";([@Départ]-[@Arrivée]))
D'ailleurs dans la colonne Date:
=SI(condition;jourouvre ;0) serait plus approprié pour uniformiser les résultats et toujours comparer à 0 plutôt qu' à ""
La seule raison d'employer "" dans un tableau numérique peut être le besoin de compter ou différencier les nombres des autres valeurs.
Zéro étant un nombre alors on emploie "".


Pour le masquage des lignes vous pouvez employer une mise en forme conditionnelle mettant la même couleur d'écriture que le fond.


Bonne soirée
 

Hasco

XLDnaute Barbatruc
Repose en paix
Bonsoir,

Dans le fichier joint j'ai mis une Mise en Forme Conditionnelle par formule après avoir sélectionner A25:M29. La cellule active étant A25
Formule MFC : =$A25=0

Par ailleurs, j'ai mis des formats personnalisés dans vos cellule d'arrivée, départ, duré etc permettant de cacher les valeurs 0.
Attention, pour les cellules affichant des durées (toujours susceptibles de dépasser 24 h) choisir un format à base de [h]:mm plutôt que h:mm.

Cordialement
 

Pièces jointes

  • Fiche de présence.xlsx
    49 KB · Affichages: 7
Dernière édition:

math10

XLDnaute Nouveau
Merci cette mise en forme sans les 0 est génial mais je suis désolé d'avoir énormément de mal à comprendre mais je ne trouve pas la formule de mise en forme conditionnelle dans la cellule A25 est-ce normal ? et dans la dernière case il y a une #Valeur! dans les totaux entretien :/
Merci énormément j'espère réussir à comprendre toute ces formules qui me paraissent extrêmement complexes.

Cordialement,
 

Hasco

XLDnaute Barbatruc
Repose en paix
Re,

Pour l'erreur #Valeur! je vous l'ai expliquée au post #5
Pour la mise en forme conditionnelle ce n'est pas dans la cellule qu'il faut regarder c'est dans les Mise en forme conditionnelle. Sur excel 2016 c'est dans l'onglet Accueil bouton Mise en forme conditionnelle

A bientôt

[Avant Edit] @Staple1600 :) Même pas la peine de chercher un lien MERCI
 
Dernière édition:

math10

XLDnaute Nouveau
Bonjour, Oui j'ai vu ton lien et je t'en remercie mais même en essayant de comprendre la mise en forme conditionnelle c'est vraiment hyper complexe je pense qu'il faut plusieurs mois de pratiques pour vraiment assimiler ces formules :).
Malgré le post 5 je n'arrive pas à résoudre l'erreur dans les totaux de [entretien] ...
 

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Formule de la colonne durée: =SI([@Date]=0;0;([@Départ]-[@Arrivée]-ENT([@Départ]-[@Arrivée]))*24)
Formule de la colonne durée [H]: =SI([@Date]=0;0;([@Départ]-[@Arrivée]))

Et magie, plus erreur #Valeur! dans colonne Entretien

Pour le reste cela viendra avec la pratique.

Bonne journée

[Edition] Au fait! votre sujet n'a rien à voir avec votre titre 'Tableau croisé dynamique':)
 
Dernière édition:

math10

XLDnaute Nouveau
Merci beaucoup !

Alors j'ai essayer de copier exactement la même mise en forme pour la deuxième personne en respectant la différence des cellule et cela ne s'applique pas je ne comprend pas pouvez vous m'expliquer ce que je dois respecter svp ?

Pour le titre honnêtement je n'ai rien trouvé de mieux :p
 

Pièces jointes

  • Fiche de présence (2).xlsx
    48.8 KB · Affichages: 7
Dernière édition:

Discussions similaires

Réponses
14
Affichages
738

Statistiques des forums

Discussions
312 329
Messages
2 087 334
Membres
103 520
dernier inscrit
Azise