Macro planning qui fonctionne à moitié

Bonsoir

j'ai trouvé un fichier super avec une macro qui fonctionne à moitié et que je voudrai faire fonctionner sur 2 points

1er probleme

Sur l'ongler "BD" quand on clique sur "Créer BD avec plan" la macro lit la page "sem1" affiche les périodes de congés pour chaque personne puis passe à l'onglet "sem2"

Et quand on clique sur la macro "Créer Plan avec BD" (cette macro qui fonctionne à moitié", elle ne recopie pas les périodes sur l'onglet "sem2" sauf si on triche que l'on fait partir la période de "sem1" et "sem2"

ex Dupond 24/01/2013 25/07/2013 Evf (ca va marcher avec "Créer Plan avec BD")

mais avec "Créer BD avec plan" on obtiendra 2 lignes

Dupond 24/01/2013 30/06/2013 Evf

Dupond 01/07/2013 25/07/2013 Evf

sauf que la macro "Créer Plan avec BD" n'arrivera pas à recopier la 2ème ligne qui disparaitra si on utilise ensuite l'autre macro vu que cette période ne figurera plus sur le plan....

J'espère avoir réussi à expliquer le probleme et que quelqu'un pourra m'aider.

2eme probléme

Je voudrai aussi recopier uniquement lintérieur des cellules + la couleur de la police d'écriture (et pas la cellule complete afin de ne pas casser la mise en forme conditionnelle de la page du plan de la feuille ou je compte utiliser ce code)

merci d'avance aux spécialistes d'excel

Bonsoir

Modifies ta macro Sub CreePlan()

    If Month(début) < 7 Then Set p = Sheets("sem1") Else Set p = Sheets("sem2")
    Set temp = p.[A:A].Find(what:=Nom, LookIn:=xlValues)
    If Not temp Is Nothing Then

Pour le 2ème problème, je ne voie pas la gêne, tu as une MEFC et celle ci n'est pas perturbée

Merci Banzai, J'ai modifié selon tes instructions cela marche parfaitement, cependant 2 questions :

Question 1

la macro "creer plan selon bd" ne va pas recopier les dates du mois de janvier 2017 par exemple (que j'ai rajouté à mon planning 2016 (car les congés de noel comportent des dates a janvier 2017), y'a t'il moyen de modifier cela afin de visualiser les périodes de congés de noel prise par salarié ? ou dois je utiliser un autre classeur 2017 ?

Question 2

pour la MEFC de Sub CreePlanIndividue par exemple, il avait dejà fallut la modifier pour qu'elle ne recopie pas seulement (et "n'abime" pas la mise en forme conditionnelle du tableau) en copiant aussi la couleur de police :

           planning.Range("b3").Offset(md, jd + d).Interior.ColorIndex = _
             Sheets("fériés").[Couleurs].Find(typeConges, LookAt:=xlWhole).Interior.ColorIndex
           planning.Range("b3").Offset(md, jd + d) = typeConges
          Else
            planning.Range("b3").Offset(md + 1, jd + d - nbj).Interior.ColorIndex = _
             Sheets("fériés").[Couleurs].Find(typeConges, LookAt:=xlWhole).Interior.ColorIndex
            planning.Range("b3").Offset(md + 1, jd + d - nbj) = typeConges

à ça

planning.Range("b3").Offset(md, jd + d).Interior.ColorIndex = _
             Sheets("fériés").[Couleurs].Find(typeConges, LookAt:=xlWhole).Interior.ColorIndex
           planning.Range("b3").Offset(md, jd + d) = typeConges
          Else
            planning.Range("b3").Offset(md + 1, jd + d - nbj).Interior.ColorIndex = _
             Sheets("fériés").[Couleurs].Find(typeConges, LookAt:=xlWhole).Font.Color
            planning.Range("b3").Offset(md + 1, jd + d - nbj) = typeConges

comment arriver à modifier celle sur la macro Sub CreePlan() ?

merci

Bonjour

Tu parles de 2016 et 2017, dans le fichier que j'ai c'est au maximum 2015

Fournis le dernier fichier en cours, en y expliquant clairement ce que tu as et ce que tu veux

Bonsoir Banzai, merci de m'aider c'est vraiment sympa de ta part

voici un fichier où les 2 problème apparaissent

  • prob avec la MEFC
  • prob de non recopie des valeurs 2017 avec la macro Congés_CreePlan()

http://www.cours83infirmier.fr/EXCEL/New%20planning_modifi%C3%A9.xls (785ko)

quelles sont tes suggestions ?

Bonjour

J'ai mis un pansement pour cette blessure (modifications repérées)

La personne qui à fait ce programme ne pensait jouer que sur 1 année et toi sur 2 ans, cela complique un peu

A vérifier

Bonjour Banzai

un grand merci car tu as résolu le probleme de MEFC (ouf car ça cassait mes cellules !)

et j'arrive à mettre des dates en 2017 qui sont gérés.

Cependant un bug persiste, je te le soumets si tu y faire quelque chose aussi ce serait super,

quand une période de congés débute en 2016 et se poursuit en 2017, la recopie ne se fait pas...

exemple : le week-end de la semaine 52 comporte un samedi 31 décembre 2016 et un dimanche 1 janvier 2017, et comme les week-end, de facon systématique, l'activité sera le même sur les 2 jours (RH, CA, ou etc...)

Soignant 33 31/12/2016 01/01/2017 RH 2

cette ligne ne sera pas géré ensuite par la macro "Créer Plan avec BD" qui va bugger.....

Bonjour

Modifie la modification

        ' Début modif le 03/02/2016
        If Year(début+ i) > Range("An") Then
          Set p = Sheets("Congés2")
        End If
        ' Fin modif le 03/02/2016

Bonjour Banzai, ca marche super bien,

un grand merci pour ton support incontournable pour un novice comme moi, et du temps passé à m'aider c'est cool de ta part !

En même temps j'essaye de comprendre les modifs que tu fais, elles sont simple (pour toi) et efficace (pour moi)

respect

Rechercher des sujets similaires à "macro planning qui fonctionne moitie"