Excel avec MOD
FerméPapyLuc51 Messages postés 4430 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 30 décembre 2024 - 10 avril 2023 à 04:25
- Excel avec MOD
- Liste déroulante excel - Guide
- Si et excel - Guide
- Word et excel gratuit - Guide
- Aller à la ligne excel - Guide
- Déplacer une colonne excel - Guide
6 réponses
Modifié le 6 mars 2023 à 06:35
Bonjour Laubou91et bienvenue
Mettre une capture d'un fichier sans les lettres des colonnes et les numéros de lignes est déconseiller ; on ne sait pas où se situent les références de la formule donnée.
Le mieux est d'envoyer une copie du fichier sans les données confidentielles et d'y inscrire des résultats attendus.
Pour joindre un fichier
1) Aller dans https://www.cjoint.com/
2) Cliquer sur [Parcourir] pour sélectionner le fichier ou le glisser dans le cadre (15 Mo maxi)
3) Aller vers le bas pour cliquer sur le bouton bleu [Créer le lien Cjoint]
4) Au bout de quelques secondes la seconde page s'affiche, avec le lien en gras ; faire un clic droit dessus et choisir "Copier l'adresse du lien"
5) Revenir dans la discussion sur CCM, et dans votre message faire "Coller".
Cordialement
Modifié le 13 mars 2023 à 06:56
Salutations à tous
Laubou91 Je continuais à chercher sans avoir vu ton dernier envoi.
Comme tu n'as pas donné ta formule je donne ma version
J'ai trouvé cette formule avec mod en calculant le temps depuis la première heure de la plage (i3) en y ajoutant une condition supplémentaire à savoir tant que les horaires de début et de fin ne sont pas remplis, toute la plage reste à 0.
Pour I4
=SI(OU($E4="";$H4="");0;SI(ET(MOD(I$3-$I$3;1)>=MOD($E4-$I$3;1);MOD(I$3-$I$3;1)<=MOD($F4-$I$3;1));1;0)+SI(ET(MOD(I$3-$I$3;1)>=MOD($G4-$I$3;1);MOD(I$3-$I$3;1)<=MOD($H4-$I$3;1));1;0))
Cordialement
13 mars 2023 à 10:55
Bonjour PapyLuc51,
Je viens de tester la formule.
C'est super, çà fonctionne très bien.
Un grand merci pour ton aide.
Je n'avais rien trouver sur YT et autres réseaux.
Je te dois une petite explication de mon décalage de réponse, je travail en soirée nuit + activités de la maison...
Tu as été une très grande aide et encore merci.
Lorsque j'aurais besoin de la dupliquer dans un autre format de tableau, je n'aurais qu'à changer les nom des cellules. Je saurais faire :)
Et bien, je te souhaite une bonne semaine.
Laubou91
Modifié le 13 mars 2023 à 11:21
Et pour une meilleure visibilité tu peux aussi mettre une MFC pour rendre invisible les 0
Et aussi mettre les 1 en vert sur fond vert
Cordialement
16 mars 2023 à 09:14
Bonjour PapyLuc51,
Je reviens vers toi pour deux petites coquilles dans la formule.
Surement à cause d'une condition dont je n'avais pas parler. Oups, dsl.
1° - Lorsque j'ai une activité de 6h00 consécutives sans pause à cheval sur deux journées, il y a un 2 qui s'affiche au lieu d'un 1. Cela est gênant parce qu'en bas de colonnes, je fais la somme de la colonne.
2° - Si je commence à 00 :00 et que je fini à 08 :00 avec pause, la deuxième partie n'est pas prise en compte.
Dans le fichier, j'ai volontairement masqué les colonnes de 08 :15 à 23 :00 pour gagner en clarté.
https://www.cjoint.com/c/MCqihKpCxZO
Pour la mise en forme conditionnelle, je l'avais déjà mise en place dans mon fichier ;). Merci.
Modifié le 16 mars 2023 à 14:12
Bonjour,
'
Je vais voir ça à tête reposée (migraine).
'
Je l'avais déjà remarqué il y a des horaires sans date et avec date. À mon avis il faut repenser le tableau pour aller de 00:00 à 24:00.
'
Cordialement
16 mars 2023 à 15:04
C'est sympa de me venir en aide.
Si tu n'y vois pas d'inconvénient, je poursuit mes recherches par d'autres moyen et promis si je trouve, je te fais un partage ;).
Merci encore.
Modifié le 7 mars 2023 à 15:20
Bonjour
Un essai pour prendre en compte le changement de jour en deuxième période de service en I4)
=SI(ET(I$3>=$E4;I$3<=$F4);1;0)+SI($H4>$G4;SI(ET(I$3>=$G4;I$3<=$H4);1;0);SI(ET(I$3>=$G4;I$3<=$H4+1);1;0))
Cdlmnt
7 mars 2023 à 16:27
Et pour traiter les deux périodes et en simplifiant (les SI ne sont plus indispensables du moment que les résultats ne sont que 0 ou 1 dixit Michel dans un autre post !)
=ET($F4>=$E4;I$3>=$E4;I$3<=$F4)*1+ET($F4<$E4;I$3>=$E4;I$3<=$F4+1)*1+ET($G4<=$H4;I$3>=$G4;I$3<=$H4)*1+ET($G4>$H4;I$3>=$G4;I$3<=$H4+1)*1
Cdlmnt
7 mars 2023 à 17:51
RQ. tu peux même supprimer les quatre *1 si tu as au préalable formaté tes cellules au format nombre
Modifié le 8 mars 2023 à 13:07
Bonjour ccm81,
Merci pour ton essais ;)
ça ne fonctionne pas touours.
J'avais trouvé une formule avec "MOD" sur une feuille de pointage simple et c'était ok.
Je te la joint pour exemple.
https://www.cjoint.com/c/MCimeXZcZBO
Modifié le 17 mars 2023 à 18:00
Bonjour Laubou91.
J'ai fini par trouver une autre méthode sans utiliser la fonction MOD() et j'espère que ça te conviendra.
Les explications sont sur le fichier joint
https://www.cjoint.com/c/MCrqpdjngMg
Cordialement
Modifié le 18 mars 2023 à 12:57
Et pour en revenir à la fonction MOD() il fallait faire une imbrication =SI(OU(ET();ET());1;0) plutôt qu'une addition de SI()
'
La formule complète
'
=SI(OU($E4="";$H4="");0;SI(OU(ET(MOD(I$3-I$3;1)>=MOD($E4-I$3;1);MOD(I$3-I$3;1)<=MOD($F4-I$3;1));ET(MOD(I$3-I$3;1)>=MOD($G4-I$3;1);MOD(I$3-I$3;1)<=MOD($H4-I$3;1)));1;0))
'
Le fichier en retour https://www.cjoint.com/c/MCsl5vniLgg
'
Codiralement
Modifié le 18 mars 2023 à 13:48
OUPS!! Je rectifie la formule
'
=SI(OU($E4="";$H4="");0;SI(OU(ET(MOD(I$3-$I$3;1)>=MOD($E4-$I$3;1);MOD(I$3-$I$3;1)<=MOD($F4-$I$3;1));ET(MOD(I$3-$I$3;1)>=MOD($G4-$I$3;1);MOD(I$3-$I$3;1)<=MOD($H4-$I$3;1)));1;0))
'
A rectifier sur la cellule I4 du fichier envoyé.
'
Cordialement
18 mars 2023 à 17:03
Alors,
J'ai modifié la formule en remplacant les 0 par "", rien :)
Du coup, j'ai fait sauté la mise en forme conditionnelle qui rempli les cellules en blanc et polices blanches lorsque =0.
Les cellules en vert sont corrigées en police noir. Sur ton fichier, elles sont vertes sur fond vert.
On y voit plus claire.
https://www.cjoint.com/c/MCsp12r6duO
Modifié le 21 mars 2023 à 17:11
Salut Laubou91.
Au final la formule avec uniquement la fonction MOD ne fonctionne pas totalement.
'
J'ai donc fait un mix entre les deux formules.
'
Je te renvoie un essai 6 qui fait une comparaison entre les trois méthodes ; 2 sont bonnes, celle du haut en vert avec la première formule et celle du bas en mauve avec le mix.
'
https://www.cjoint.com/c/MCvpZdebJBg
'
Cordialement
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question21 mars 2023 à 22:22
Bonjour
J'ai tenté avec une fonction personnalisée (macro) peut être plus facile à écrire/lire !
https://www.cjoint.com/c/MCvvu7qgXDB
Cdlmnt
Modifié le 22 mars 2023 à 07:36
Salut ami ccm81 !
'
Bien vu pour cette fonction personnalisée que je peux pas faire vu mon niveau plus que nul en Anglais .
Dans sa réponse #16 Laubou91 souhaitait que les 0 soit remplacés par "" pour éviter une Mfc.
'
Cordialement
9 avril 2023 à 18:07
Bonour Papy,
Je rentre de plusieurs jours d'absences à l'étranger. Je suis désolé de ne pas vous avoir répondu plus.
Je vous remercie pour tous les efforts pour m'aider.
Le lien pour récupérer le ficher est out. Vous est-il possible de le renvoyer.
effectivement, je ne comprend pas les écarts de pauses ou, il manque ou surcoroit, le 1/4 d'heure.
J'ai eu ce soucis sur une ancienne formule mais je ne me rappel plus comment le pb a été réglé.
A vous lire.
9 avril 2023 à 18:09
J'ai un pb avecle J de mon clavier
10 avril 2023 à 04:25
Bonjour Laubou91
'
Mes liens sont toujours en cours,
'
Je suppose que c'est celui de ccm81 (salutations amicales), le voici avec la rectification zu = "" sur le code
'
https://www.cjoint.com/c/MDkcxzKzpX7
'
Cordialement
22 mars 2023 à 09:30
Salut PapyLuc51
que les 0 soit remplacés par ""
Pas grand chose à faire, Alt-F11 pour accéder à l'éditeur vba, puis Ouvrir le Module 1 (fenêtre de gauche), puis remplacer zu = 0 par zu = ""
Ne pas oublier en début de code de sauvegarder avec le type xlsm (enregistrer sous... prenant en compte les macros)
Cdlmnt
7 mars 2023 à 12:24
Bonjour PapyLuc51,
Voici le lien de mon fichier.
L'obectif est de mettre un 1 lorsque l'horaire indiqué en tête de colonne correspond aux horaires en début de ligne.
Cela correspond aux horaires de travail d'une personne avec pause et une journée de travail à cheval sur deux journées.
Les formules fonctionnent si elle fini avant 00:00 mais pas après.
https://www.cjoint.com/c/MChlqQO3erO
Merci pour votre aide.
Laurent