Formule matricielle incorrecte, je ne trouve pas l'erreur [Résolu] - Forum Excel

Formule matricielle incorrecte, je ne trouve pas l'erreur Formules matricielles » Articles VBA - Problème avec formule matricielle [Résolu] (Résolu) » Forum - VB / VBA Excel, formule matricielle, liste ss doublons (Résolu) » Forum - Excel Formule matricielle (Résolu) » Forum - Bureautique Maitrise de la formule matricielle [Résolu] (Résolu) » Forum - Bureautique

Bonjour,

J'ai un problème sur une formule matricielle. Là où elle devrait m'afficher un planning sur la semaine 1 d'un roulement de base, elle m'affiche la semaine 2 sauf les dimanche (la formule ne change pas cependant).

Je joints mon fichier pour être plus parlant: https://www.cjoint.com/c/HAireYEOQbI

J'ai adapté la formule depuis ce fichier: https://www.cjoint.com/c/HAiq6drBX3I et j'avoue ne pas la maîtriser à 100%, ce qui m'empêche de trouver la solution tout seul.

C'est pourquoi je remercie ceux qui s'attarderont sur mon problème. Merci

Pour faire simple, la formule ne fonctionne pas et je ne comprends pas pourquoi.

Forum

Formule matricielle incorrecte, je ne trouve pas l'erreur Formules matricielles » Articles VBA - Problème avec formule matricielle [Résolu] (Résolu) » Forum - VB / VBA Excel, formule matricielle, liste ss doublons (Résolu) » Forum - Excel Formule matricielle (Résolu) » Forum - Bureautique Maitrise de la formule matricielle [Résolu] (Résolu) » Forum - Bureautique

Web: www.shapebootstrap.net

9 réponses

Marsh

NOVEMBER 9, 2013 AT 9:15 PM

Bonjour,

plutôt que faire un doublon tu aurais mieux de compléter les explications.
On ne sait pas quelle formule, ni où, ni ce que tu veux obtenir dans les différents cas possibles et à partir de quoi.
Là tu auras encore 0 réponses.
eric

Reply
réponses:
  • SpcCwb

    Bonjour,

    Je prends en compte ta remarque, merci du conseil Eric. C'était pour éviter de pondre un pavé comme ci-dessous qui ferait fuir le premier venu.

    Composition du fichier = 4 onglets
    -PARAMETRAGE: calendrier et identification des semaines de mon cycle de roulement (j'ai un cycle de roulement sur 4 semaines, ce cycle débute au 1/1/18, donc du 1 au 7 janvier je suis en semaine 1 du cycle, du 8 au 14 janvier en semaine 2, du 15 au 21 en semaine 3, du 22 au 28 janvier en semaine 4 et du 29 au 4 février retour en semaine 1) FONCTIONNE BIEN
    -<souligne>Feries</souligne>: définition des jours fériés selon l'année en cours (sert de base pour une mise en forme conditionnelle pour plus tard) FONCTIONNE BIEN
    -roulement PSO HBGT: contient les roulements des salariés (ex: ligne 33)
    -<souligne>TRAME PLANNING A COPIER COLLER</souligne>: support imprimable qui doit donc me sortir un planning en fonction du mois (saisi en B3 et reporter au jour par jour en C6:AG6) en fonction du nom du salarié (ex en B33) et du roulement établi pour ce salarié sur l'onglet précédent (pour l'exemple, le roulement saisi en ligne 33)


    ---
    Fonctionnement théorique:
    Sur l'onglet TRAME PLANNING COPIER COLLER:
    Après avoir saisi la date du 1er jour du mois en B3, en ligne 10 j'obtiens le numéro de semaine calendaire (de 1 à 52), en ligne 11 j'ai le numéro de semaine du cycle de roulement (de 1 à 4) et en ligne 12 le jour de la semaine (de lundi à dimanche).
    Pour le salarié de l'exemple (B33), de C33:AG33, j'ai une formule matricielle qui, en fonction de:
    -numéro de semaine du cycle de roulement C11:AG11
    -nom du salarié B33
    -jour de la semaine C12:AG12
    -du roulement établi sur l'onglet roulement PSO HBGT
    ..devrait me sortir le planning correspondant.

Marsh

NOVEMBER 9, 2013 AT 9:15 PM

Bonjour,

désolé mais je ne comprend rien à ton tableau.
Tu parles de roulement sur 4 semaines et on voit que tu vas jusqu'à semaine 5 (???)
Avec un système de notation bien mystérieux : ... 4ss2 4ds2 5ls2 5mas2 5mes2 ...
Quel est le lien avec les cycles ?
Mettre plusieurs infos dans 1 cellule est rarement conseillé.

En plus ton système me parait bien compliqué...
Si ton cycle dure 28 jours, pour avoir la position d'une date quelconque dans le cycle il suffit de noter la date de départ du cycle pour un salarié, de faire la différence avec la date voulue modulo longueur du cycle et on a sa position dans le cycle (position 1 =0).
Pas besoin de faire la liste de toutes les dates et de passer par le n° de semaine.

Un exemple ci-joint, regarde si tu peux l'utiliser pour ton besoin.
https://www.cjoint.com/c/HAko0QqWBRD
eric

En essayant continuellement, on finit par réussir. 
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci

Reply
réponses:
  • SpcCwb

    Tout d'abord merci de ton retour et désolé pour le délai de réponse, si j'avais pu répondre plus tôt je l'aurai fait sois en sûr.

    Alors pour te répondre:
    Tu parles de roulement sur 4 semaines et on voit que tu vas jusqu'à semaine 5 (???) J'ai mis une 5e semaine pour tester visuellement si ma formule n'allait pas chercher au delà du nombre de semaine indiqué sur l'onglet PARAMETRAGE cellule H7
    Avec un système de notation bien mystérieux : ... 4ss2 4ds2 5ls2 5mas2 5mes2 ... Là encore c'est pour tester; 4ss2 signifie 4eme samedi du cycle pour le salarié n°2, pour voir si la formule cherche bien le roulement sur la bonne ligne et pour détecter s'il y a un décalage (soit de semaine,
    soit de jour,..
    Dans la finalité le roulement ressemblera à un planning plus simple, travail du lundi au vendredi...
    Quel est le lien avec les cycles ? pour le moment aucun lien entre eux, comme expliqué juste avant, il s'agit pour le moment d'identifier l'écart entre ce que me sort la formule et le roulement programmé
    Mettre plusieurs infos dans 1 cellule est rarement conseillé. je ne vois pas à quoi tu fais référence?

    Effectivement, le système est un peu complexe à mettre en oeuvre, mais c'est pour viser la simplicité pour l'utilisateur, je m'explique:
    le but de la manoeuvre de ce fichier c'est que mes collègues, qui en connaissent encore moins que moi en excel, puissent planifié le travail de leurs équipes en indiquant seulement:
    -le nombre de semaine dans leur cycle de roulement onglet PARAMETRAGE cellule H7 qui peut varié selon le corps de métier
    -la date de début de leur cycle de roulement onglet PARAMETRAGE cellule H5
    -le roulement de base de leurs salariés onglet roulement PSO HBGT, lignes 33, 38, 41,... (en réalité dans mon fichier de base il y a de quoi afficher plus de 60 salariés, j'ai limité le nombre à 3 pour rendre le fichier plus digeste)

    Voilà tout ce qu'ils doivent toucher, ensuite ils n'ont plus qu'à dupliquer l'onglet TRAME PLANNING A COPIER COLLER, le renommer en fonction du mois et indiquer en cellule B3 la date du 1er jour du mois qu'ils veulent visualiser (pour le retravailler manuellement en fonction des absences).

    Encore merci Eric

  • eriiic

    Bonjour,

    ok, mais as-tu regardé ma proposition ?
    eric

  • SpcCwb

    Bonjour Eric,

    Oui j'ai regardé votre fichier, et à vrai dire il m'a fait me poser plus de questions qu'il ne m'a apporter de réponse. Je le garde néanmoins bien au chaud, j'aime toujours avoir plusieurs solutions pour un seul problème.

    Pour info, j'ai trouvé d'où venait l'erreur, je la poste en peu plus bas.

    Merci du mal que vous vous êtes donné.

    En espérant pas à tout de suite, bonne continuation!

Marsh

NOVEMBER 9, 2013 AT 9:15 PM

Bonjour

Une idée dans le fichier

https://www.cjoint.com/c/HAmq3WoEJjx

Reply
réponses:
  • SpcCwb

    Bonjour Philippe,

    Merci pour votre fichier, je vous pique deux ou trois idées.

    Tout comme pour Eric, je vous remercie du temps que vous m'avez accorder.

    Je poste la solution à mon problème un peu plus haut.

    Encore merci et bonne continuation.

Marsh

NOVEMBER 9, 2013 AT 9:15 PM

Merci à ceux qui sont venu à ma rescousse, voilà les deux erreurs qui venaient polluer la formule:

=INDEX('roulement PSO HBGT'!$C33:$DC36;EQUIV($B33;'roulement PSO HBGT'!$B33);EQUIV(RECHERCHE(9^9;$C$11:C$11);'roulement PSO HBGT'!$C$30:$DC$30)+JOURSEM(C$12)-1)

à changer en:
=INDEX('roulement PSO HBGT'!$C33:$DC36;EQUIV($B33;'roulement PSO HBGT'!$B33);EQUIV(RECHERCHE(9^9;$C$11:C$11);'roulement PSO HBGT'!$C$30:$DC$30)+JOURSEM(C$12;2)-1)


Et pour retirer les #N/A:

=SIERREUR(INDEX('roulement PSO HBGT'!$C33:$DC36;EQUIV($B33;'roulement PSO HBGT'!$B33);EQUIV(RECHERCHE(9^9;$C$11:C$11);'roulement PSO HBGT'!$C$30:$DC$30)+JOURSEM(C$12;2)-1);"")


Et dans l'onglet roulement PSO HBGT

En ligne 30, n'indiquer qu'une seule fois le numéro de semaine dans le cycle (ex: C30; J30; Q30;...)

Je laisse ici le fichier qui fonctionne comme espéré pour ceux que ça pourrait intéresser.

Merci commentcamarche et ses sauveurs.

le fichier: https://www.cjoint.com/c/HApkLcOQooI

Reply

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed