XL 2013 Supprimer des sauts de ligne vierge d'une cellule qui contient une formule

ANTONY34200

XLDnaute Occasionnel
Bonjour,
j'ai créé un planning sous excel, pour ma femme qui reprend une PME en sécurité privée, ou je pense avoir déjà bien bossé dessus.
Je ne suis pas un expert, mais j'ai créé ce planning en consultant pas mal de forum. Le planning est fonctionnel, MAIS, car il y a un mais, j'aimerais y apporter quelques améliorations.
Le fichier joint, comporte 3 onglets (paramètre, général et agt 5)

L'onglet général, est en fait, le planning général, et c'est la que toutes les informations sont saisies.

L'onglet AGT 5, est le planning individuel de l'agent. Des cellules D8 à D39 ont une formule qui appelle le nom du site SI l'agent est planifié dans le planning général, pareil pour les heures de début (F8 à F39) et les heures de fin (G8 à G39).

Mon soucis est que j'aimerais, dans les cellules D8 à D39, F8 à F39, et G8 à G39, quand l'agent est planifié, les sauts de lignes inutiles ou vierges (dans les cellules)soient supprimées, sinon les cellules sont bien trop grande.

J'aimerais aussi savoir s'il est possible de classer par ordre chronologique d'heure de début (dans la ligne) et que les sites et les horaires correspondent.

Je ne suis pas expert, mais je pense toucher un peu, mais la... je bloque. j'ai cherché un peu partout une piste, mais je n'ai rien trouvé.
Si quelqu'un pouvait m'aider un peu ... se serai avec plaisir.
A bientôt, et merci d'avance.
 

Pièces jointes

  • test.xlsm
    235.3 KB · Affichages: 176

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour,
Dans la PJ ( copie de votre fichier ) j'ai deux agents "vide" et je n'arrive pas à obtenir cette fenêtre d'erreur quand je sélectionne leur planning individuel.
Pouvez vous me donner la façon dont vous procéder pour obtenir cette erreur ?
 

Pièces jointes

  • Antony_New version_V47V6.xlsb
    391.3 KB · Affichages: 1

ANTONY34200

XLDnaute Occasionnel
Bonjour,
je viens de refaire le test sur le planning réel ... et là, je n'ai plus d'erreur ... je ne comprends pas.
est-ce parce que j'ai fait des copié/collé du planning général, puis réactivé les macro, fermé et ouvert le fichier, puis cliqué sur les différents boutons pour créer les fiches et les mise à jours des données, peu être trop d'un coup (les 28 agents à créer leur fiche d'un seul clic) ... je ne sais pas. mais la, je n'ai plus le message d’erreur.

Merci encore pour le coup de main ...
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
C'est le lot habituel des développeurs. Dans l'industrie on appelle ça DNR pour défaut non reproduit. Et ça agace particulièrement les clients car DNR peut vouloir dire défaut réel mais dans un contexte inconnu. Donc toujours une épée de Damocles.

Vous ne m'avez pas dit quel temps d'accès à G vous obteniez avec le "vrai" fichier, celui initialement à 3300ms ?
 

ANTONY34200

XLDnaute Occasionnel
Bonjour Sylanu,
J'aurais 2 nouvelles modifications à apporter, si possible.

1- est-il possible dans G, de faire un bouton Imprim Agents (juste à coté de celui Imprim GENERAL) proposant un recalcule des feuilles AGT et aperçu avant impression, des feuilles AGTxx sélectionnable par nom d'agent avant de lancer l'aperçu ? afin de pouvoir faire une impression de "masse" des agents sélectionné. toutes les feuilles AGTxx ont la même zone d'impression défini.

2- Est-il possible, dans les onglets AGTxx donc le AGT_REF, de S40 à W40 de faire s'afficher les éléments du 1ier jour du mois suivant, qui est masqué automatiquement pour l'impression (cas peu être particulier pour février, et les mois à 30 jours et décembre car on change d'année ??) et conserver la mise en forme (gris si c'est un dimanche et rouge clair si c'est un férié).
Actuellement il s'affiche ça :
1.JPG


Et j'aimerais qu'il s'affiche ça pour faciliter le contrôle du calcul de S8 à W8:
2.JPG


c'est juste un élément de contrôle pour le calcul des heures, car une vacation à cheval d'un mois sur l'autre, doit être payé sur le mois du commencement de la vacation. les calculs de S8 àW8 sont bon, c'est juste pour contrôler le détail.

Je vous joint mon fichier vierge avec mes mises en formes ... sinon, j'ai pour le moment que des retours plutôt positif de la version V47_V5

Merci d'avance
 

Pièces jointes

  • V47_V5 Vierge.xlsb
    322.9 KB · Affichages: 2

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour,
Dans l'état du logiciel, il faut éviter toute modif qui toucherait à ce qui marche. En conséquence dans la V47_V6 je me suis débrouillé pour faire un addon indépendant et simple.

1- Dans la page Paramètre j'ai rajouté une colonne "A imprimer" avec des X pour le choix OUI.
Dans G j'ai rajouté le bouton "Imprimer AGT". Si on clique sur ce bouton :
a- On ouvre une par une les page AGT taguées X dans Paramètre
b- On demande de vérifier, si ok on passe à la suivante.
c- Si une réponse est NON, on annule le process pour correction.
d- Si toutes les réponses ont été OUI alors on lance l'impression de toutes les AGT taguées.

2- Votre seconde requête me pose problème ( en terme de fonctionnement de l'outil )
Vous dites que le premier jour du mois suivant peut impacter le nombre d'heures, donc ainsi le salaire. Dans ce cas, ce jour doit impérativement apparaître en permanence pour vérification, mais aussi à l'impression puisqu'il fait partie de la plage de calcul heures/paye.
Donc j'ai pris le parti de toujours afficher le 1er du mois suivant.
( sauf 1er janvier car problème d'incrémentation de mois. mais si vous voulez on peut le corriger, mais ça fait du code supplémentaire pour juste un cas )
Position discutable, en attente de votre position.
V47-V6 à tester.
 

Pièces jointes

  • V47_V6 Vierge.xlsb
    371 KB · Affichages: 5

ANTONY34200

XLDnaute Occasionnel
Je viens de regarder la version.

1- le bouton Imprim AGT est très bien. Merci

2- la je suis embêter aussi pour expliquer.
Très franchement, je ne préférerais pas que s'affiche la ligne du 1er du mois suivant... dans la version que je vous est fait passer lors de ma demande, tout mes calculs étaient bon. (ça incluait se qui pouvait se trouver sur la ligne du 1er du mois suivant), donc pas de soucis sur ce point.

c'est juste, et c'est la que je ne sais pas comment l'expliquer, faire une sorte de copié collé automatique de la 1er ligne du mois suivant, des chiffres pouvant se trouvé dans les cellules masquées, sans modifier aucun calcul, juste avoir un un "reflet" des données.

ex pour février : ne pas voir la ligne du 01/03/2020 mais avoir le "reflet" des cellules S37 à W37 dans les cellules S40 à W40
ex pour décembre : ne pas voir la ligne du 01/01/2020 (ce qui est déjà le cas) mais avoir le "reflet" des cellules S39 à W39 dans les cellules S40 à W40

ex pour décembre : ne pas voir la ligne du 01/05/2020 mais avoir le "reflet" des cellules S38 à W38 dans les cellules S40 à W40

c'est juste pour avoir un "reflet" des cellules masquées. rien d'autre, sans avoir d'impacte sur les calculs.
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Comme je n'avais nulle envie de bidouiller dans le code avec tous les dangers que cela représentent, j'ai opté pour une autre stratégie.
1- Je suis revenu au masquage précédent.
2- Dans les cellules S40:W40 je fais le calcul des cellules lignes 37 39 si elles sont du mois suivant.
Les formules sont dans REF_AGT donc sans rien toucher au reste. Ce n'est qu'un "reflet" .
VB:
=SI(MOIS($C$39)=1+MOIS($C$8);S39;0)+SI(MOIS($C$38)=1+MOIS($C$8);S38;0)+SI(MOIS($C$37)=1+MOIS($C$8);S37;0)+SI(MOIS($C$36)=1+MOIS($C$8);S36;0)
 

Pièces jointes

  • V47_V7 Vierge.xlsb
    374.4 KB · Affichages: 2

Discussions similaires

Statistiques des forums

Discussions
312 321
Messages
2 087 246
Membres
103 498
dernier inscrit
FAHDE