Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 MFC

  • Initiateur de la discussion Initiateur de la discussion Moreno076
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Moreno076

XLDnaute Impliqué
Bonsoir à tous.

Je voudrais adapter la MFC du tableau ci-joint mais je n'y arrive pas.

Je voudrais que les MFC soit du même type que celle du lundi AM (bleu). Pour la formule la plage est c1 c18. Si je remplace par c9 car commence reellement à c9 ca ne fonctionne pas si je remplace tous les c1 par c9.

je rentre les horaires dans Y19 et Y20 et la MFC s'applique.

Je n'arrive pas à reproduire la formule et je comprend pas ce qu'il faut faire pour appliquer une MFC. Je souhaiterais que ca se reproduise d'une part le lundi matin.

Ensuite il y a une plage créer l'apres midi et j'ai besoin d'en créer une deuxieme qui deborde sur deux jours. Par exemple de 16h à 11h30. Deux plages ne se superposeront jamais.

Merci pour votre aide
 

Pièces jointes

Solution
Je ne sais pas si ça se voit, mais pour les deux premières MFC j'ai utilisé la couleur du lundi, pour les deux MFC suivantes j'ai utilisé la couleur du mardi, etc.

Et j'ai utilisé la même mise en forme (mais non conditionnelle) pour encadrer les petits tableaux (colonnes X à AE), que la MFC correspondante (par exemple hachures bleues vers la droite pour la première MFC).
Bonjour,
Pour la MFC bleue existante...
- la plage est : =$C$18:$V$36
- la formule est : =ET($C18>=$Y$18;$D18<=$Y$19)
Explique la plage et la formule de la MFC que tu veux créer (modifier ?) car je ne comprends pas tes remplacements de C1 par C9 vu qu'il n'y a pas de C1.
D'ailleurs pourquoi C9 puisque les horaires commencent en C8 ?
 
je rentre les horaires dans Y19 et Y20 et la MFC s'applique.
C'est normal puisque dans la MFC les comparaisons des horaires se font par rapport à ces deux cellules. 😉
Pour les autres MFC, il faut donc remplacer $Y$19 et $Y$20 par les cellules correspondantes, c'est-à-dire $Y$8 et $Y$9 pour le lundi matin ou $Y$37 et $Y$38 pour le mardi après-midi, par exemple.

Pour rappel, au cas où 😉 : le $ sert à "figer" une colonne ou une ligne.
Si tu as Y19 dans la formule d'une cellule et que tu copies cette cellule ailleurs, ça décalera automatiquement le "Y19" d'autant.
En revanche, si tu as $Y19, quand tu vas recopier la cellule contenant la formule, seul le numéro de ligne changera ; le "Y" restera "Y".
Si tu as Y$19, alors c'est le numéro de ligne qui restera fixe (toujours "19").


Pour lundi matin, tu sélectionnes la cellule en haut à gauche de ta plage à laquelle appliquer la MFC, puis tu entres la MFC.
La condition sera
=ET($C8>=$Y$8;$D8<=$Y$9)
et elle s'appliquera à
=$C$8:$V$17
 
Re, 😉

Les horaires à cheval sur deux jours, ce n'est jamais très simple à gérer (du mois pour moi), donc j'ai quelque peu modifié ta feuille... 🙁

1- A la place de "Lundi", "Mardi", etc. j'ai mis la date du lundi, la date du mardi, etc. et j'ai fait afficher le jour et la date (on peut modifier l'affichage).
Autrement dit, la cellule ne contient plus du texte, mais elle contient maintenant une date (qui est utilisée pour effectuer des calculs).

2- A la place de l'heure (par exemple 07:45:00 contenue dans une cellule et affichage 7:45), j'ai mis la date et l'heure (09/03/2020 07:45:00 en gardant le même affichage qu'avant 7:45). La date en question est prise dans la colonne B, d'où la modification apportée à la colonne B (voir explication 1- ci-dessus).
C'est valable pour les colonnes C et D.

3- Pour simplifier les calculs des MFC, aux heures de début et de fin, j'ai ajouté une date de début et une date de fin.
C'est un peu plus lourd pour l'utilisateur, mais c'est infiniment plus simple pour les MFC.

4- Pour les dates de début et de fin, j'ai mis une liste déroulante, pour être sûr de ne pas se tromper dans les dates.
J'ai aussi mis une coloration automatique en fonction du jour sélectionné (on peut bien sûr supprimer ça si ça t'embête).

5- J'ai prévu 8 MFC qui s'appliquent chacune sur l'ensemble du tableau.
On peut bien sûr en ajouter ou en supprimer si tu veux.
 

Pièces jointes

Dernière édition:
Bonjour à tous,

A mon avis utiliser une MFC n'est pas la meilleure idée.

Il vaut mieux (fichier joint) appliquer des bordures colorées avec cette macro :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [Y:Y]) Is Nothing Then Exit Sub
Dim i&, c As Range, deb&
Application.ScreenUpdating = False
'---RAZ---
For i = 9 To 104 Step 19
    With Cells(i, 3).Resize(IIf(i = 104, 9, 19), 20)
        .Borders.Weight = xlThin
        .Borders.ColorIndex = xlAutomatic
        .Borders(xlEdgeTop).Weight = xlMedium
        .Borders(xlEdgeBottom).Weight = xlMedium
        If i < 104 Then .Rows(10).Borders(xlEdgeBottom).Weight = xlMedium
    End With
Next i
If Application.Count([Y:Y]) = 0 Then Exit Sub
'---bordures épaisses colorées---
For Each c In [Y:Y].SpecialCells(xlCellTypeConstants, 1)
    deb = c.Row - IIf(c(1, 0) Like "*fin", 1, 0)
    For i = deb To deb + 18
        If Cells(i, IIf(c(1, 0) Like "*fin", 4, 3)) >= c Then
            With Cells(i, 3).Resize(, 20).Borders(IIf(c(1, 0) Like "*fin", xlEdgeBottom, xlEdgeTop))
                .Weight = xlThick
                .ColorIndex = 3 'rouge
            End With
            Exit For
        End If
Next i, c
End Sub
A+
 

Pièces jointes

Dernière édition:
Bonjour à tous
J'ai pris le temps de lire et de voir et tester vos tableaux.
Résultat exceptionnel pour Marcel32 merci à toi.
Je vais privilégier plutôt les MFC que les VBA, je pense être + à l'aise avec.

J'ai mis mon tableau à jour jusqu'au samedi.

Me reste les formule de balance à mettre.

Merci Marcel 32.
 

Pièces jointes

Du coup je n'arrive pas à mettre la formule dans balance.

La balance est la somme des heures dispo dans la colonne H (selon tranche horaire AA9 AA10 - - somme des heures TF dans la colonne H selon meme tranche horaire) - besoin activité AA12

=SOMME(INDIRECT("H"&EQUIV(AA9;C8:C17;0)):INDIRECT("H"&EQUIV(AA10;D8😀17;0)))-SOMME(INDIRECT("G"&EQUIV(AA9;C8:C17;0)):INDIRECT("G"&EQUIV(AA10;D8😀17;0)))-AA12

Merci
 

Pièces jointes

Marcel32 merci à toi.
Merci. 😉

Tu ne le sais peut-être pas, mais Job75 est au moins 1 000 000 de fois meilleur que moi en ce qui concerne Excel (moi je bidouille pendant des jours jusqu'à ce que ça fonctionne à peu près, lui il maîtrise à fond et te pond un programme hyper opérationnel en quelques heures à peine), donc sa réponse est à prendre en compte très sérieusement.

Je vais tout de même regarder ta balance bien sûr.
 
LOL. Merci 😉

Tu confirmes que dans le message #8, il y a une coquille : c'est la colonne G, et non H, pour les TF ?

Donc tu veux somme(Heures dispo) - somme(Heures TF) - Besoin Activité ?
 
Est-ce qu'il faut trouver 7:15 (c'est-à-dire 32:15 - 0:00 - 25:00) pour la première balance ?

Ma formule trouve :
1ère balance : + 7:15
2e balance : - 16:30
Est-ce bon ?
 
Dernière édition:
Formule à mettre en AA13 :
=SOMME(INDIRECT("H"&EQUIV(Z9+AA9;C:C;0)):INDIRECT("H" &EQUIV(Z10+AA10;D: D;0)))
-SOMME(INDIRECT("G"&EQUIV(Z9+AA9;C:C;0)):INDIRECT("G" &EQUIV(Z10+AA10;D: D;0)))
-AA12
(formule à remettre en forme : supprimer les sauts à la ligne et supprimer les espaces devant les D)

En suite, copier la cellule AA13 et faire un collage spécial pour ne coller que la formule pour les autres balances (AA23, AA31, etc.).


Autre formule possible :
=SOMME.SI.ENS(H:H;C:C;">="& (Z9+AA9);D: D;"<=" & (Z10+AA10))
-SOMME.SI.ENS(G:G;C:C;">="& (Z9+AA9);D: D;"<=" & (Z10+AA10))
-AA12
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…