XL 2016 erreur après modification sur l'onglet principal

halecs93

XLDnaute Impliqué
Bonjour à tout le monde.

Un merci tout particulier à Oneida et Sylvanu pour s'être penchés sur mon problème.

Je rencontre maintenant un autre souci, que je n'avais pas sur mon fichier original.

A l'ouverture de mon classeur, je peux générer automatiquement les plannings individuels.

Mais dès que j'apporte une modification sur l'onglet "Planning" la macro permettant de générer ces plannings plante.

1705216151617.png


1705216263319.png
 

Pièces jointes

  • halecs93- chevauchement- SOLUTION - exceldownloads.xlsm
    298.6 KB · Affichages: 10

Oneida

XLDnaute Impliqué
Bonjour,
J'arrive a trouver la cellule colonne A en fonction de hd ou hf avec une boucle sur la colonne A et une comparaison avec format.
Pas trouver le moyen d'utiliser .find.
Curieusement Countif marche avec format ceci afin de savoir si hd ou hf sont dans la colonne
Vous etes preneur ou pas?
 

halecs93

XLDnaute Impliqué
Bonjour,
J'arrive a trouver la cellule colonne A en fonction de hd ou hf avec une boucle sur la colonne A et une comparaison avec format.
Pas trouver le moyen d'utiliser .find.
Curieusement Countif marche avec format ceci afin de savoir si hd ou hf sont dans la colonne
Vous etes preneur ou pas?
Bonjour....

Preneur ? Ho que oui... j'ai continué à faire de tests tard...mais rien n'y fait. Je bloque toujours.

Donc, un grand merci pour votre solution.
 

Oneida

XLDnaute Impliqué
Re

halecs93

Fichier modifier avec code de Dranreb. Merci a lui

Suite:
J'ai lance pour voir sans point d'arret et pas de probleme pour les calculs lgdeb et lgfin, mais ca pedale dans la semoule pour le dernier nom de personne
 

Pièces jointes

  • halecs93- chevauchement- SOLUTION - exceldownloads.xlsm
    308.5 KB · Affichages: 3
Dernière édition:

halecs93

XLDnaute Impliqué
Re

halecs93

Fichier modifier avec code de Dranreb. Merci a lui

Suite:
J'ai lance pour voir sans point d'arret et pas de probleme pour les calculs lgdeb et lgfin, mais ca pedale dans la semoule pour le dernier nom de personne
Du coup, je reviens rapidement.... lorsque je génère les plannings, j'ai un décalage de 15'. Par exemple un horaire renseigné de 7:30 - 9:00 devrait me donner une durée de 1h30. C'est bien ce qui est écrit dans le planning de la personne concernée, mais en revanche le planning "dessiné" va jusqu'à 9:15...

Argh....
1705322809021.png
 
Dernière édition:

halecs93

XLDnaute Impliqué
Bonjour.
Vous auriez meilleur temps de calculer vos variables comme ça :
VB:
    lgdéb = Int(hd * 96 + 0.5) - 19
    lgfin = Int(hf * 96 + 0.5) - 19
Du coup, je reviens rapidement.... lorsque je génère les plannings, j'ai un décalage de 15'. Par exemple un horaire renseigné de 7:30 - 9:00 devrait me donner une durée de 1h30. C'est bien ce qui est écrit dans le planning de la personne concernée, mais en revanche le planning "dessiné" va jusqu'à 9:15...

Argh....

1705322848016.png
 
Dernière édition:

halecs93

XLDnaute Impliqué
Du coup, je reviens rapidement.... lorsque je génère les plannings, j'ai un décalage de 15'. Par exemple un horaire renseigné de 7:30 - 9:00 devrait me donner une durée de 1h30. C'est bien ce qui est écrit dans le planning de la personne concernée, mais en revanche le planning "dessiné" va jusqu'à 20:15...

Argh....
Regarde la pièce jointe 1188475
J'ai modifié
VB:
Sub remplir(li, hd, hf, Nom, jour, coul)
    ' zone à remplir avec les variables de l'action
    Set f = fexist(Nom)                           ' si la feuille de l'agent n'existe pas alors elle est créée
    'Code fourni par Dranreb XLD 15/01/2024
    lgdeb = Int(hd * 96 + 0.5) - 19
    lgfin = Int(hf * 96 + 0.5) - 19
    With f
        col = .Rows(4).Find(UCase(jour)).Column
        .Cells(lgdeb, col).Value = hd
        .Cells(lgfin, col).Value = hf
        .Cells(lgdeb + 1, col).Value = li
        .Range(.Cells(lgdeb, col), .Cells(lgfin, col)).Interior.Color = coul
   End With
    ' Activer les événements pour déclencher le recalcul des formules
    Application.EnableEvents = True
End Sub


avec ces deux lignes :

Cells(lgfin - 1, col).Value = hf
et
.Range(.Cells(lgdeb, col), .Cells(lgfin - 1, col)).Interior.Color = coul

En gros j'ai supprimé la valeur d'une cellule. Mais ça me semble un peu bricolage....
 

halecs93

XLDnaute Impliqué
Re

halecs93

Fichier modifier avec code de Dranreb. Merci a lui

Suite:
J'ai lance pour voir sans point d'arret et pas de probleme pour les calculs lgdeb et lgfin, mais ca pedale dans la semoule pour le dernier nom de personne
Pour le coup, je mets ce post en "solution".

(je risque de chercher un autre conseil.... en effet, la génération des plannings semble longue...donc bientôt une nouvelle discussion ;) )

Encore merci Oneida, Dranreb et Job75
 

Statistiques des forums

Discussions
312 206
Messages
2 086 220
Membres
103 158
dernier inscrit
laufin