Planning visuel d'absence (VBA), améliorer le code

exene

XLDnaute Accro
Bonjour,

Je gérais un planning d'absences de façon classique une feuille data avec le nom, la date de début, la date de fin, une formule sommeprod pour faire le décompte des jours et une autre pour répartir les absences par mois. Dans quatre autres onglets (un par trimestre), une représentation visuelle des absences (avec MFC). Cela était suffisant pour un petit nombre de personnes mais on m'a demandé de le faire pour beaucoup plus de collègues et le fichier est tellement lourd qu'il devient inutilisable.J'ai donc fait des recherches pour trouver une solution en VBA. J'ai trouvé un fichier et même réussi à modifier le code pour ne pas colorier les jours fériés (laborieusement). Mon souci, je dois modifier le code à chaque fois que j'ajoute une personne et si une personne prend 2 semaines en juin et une en septembre, il apparaitra sur deux lignes alors que je voudrais visualiser les deux périodes sur une même ligne pour une même personne.
Pourriez vous m'aider
 

Pièces jointes

  • Planning_2010 (2).zip
    19.3 KB · Affichages: 173

Staple1600

XLDnaute Barbatruc
Re : Planning visuel d'absence (VBA), améliorer le code

Bonjour exene


Tiens , je reconnais ce code, il me semble l'avoir lu dans l'Ordinateur Individuel (et également sur son forum dédié)
A l'époque je m'étais fait la réflexion, qu'on était plus pointu sur XLD que chez OI, vu qu'ils mettent des Select dans leur code.

Exene: Peux-tu mettre un exemple visuel du résultat final que tu veux obtenir , stp ?
Merci.

EDITION: A l'époque, j'avais du saisir le code à la mimine, maintenant il nous mâche le boulot
 
Dernière édition:

exene

XLDnaute Accro
Re : Planning visuel d'absence (VBA), améliorer le code

Bonjour,

J'ai effectivement trouvé le fichier sur le forum de l'OI, j'ai modifié le fichier pour ne pas colorer les jours fériés. De plus en vous lisant j'ai appris que la multiplication des Select n'est pas top, mais le code avait son avantage, j'arrivais à le comprendre car je ne connais pas le VBA

J'essaye de trouver un fichier correspondant à mon souhait

@+
 
Dernière édition:

exene

XLDnaute Accro
Re : Planning visuel d'absence (VBA), améliorer le code

Re,

Ci-joint un fichier pour que vous voyez la façon dont je travaillais

A Dranreb, je ne connais pas le VBA et je ne sais pas utiliser des plages dynamiques dans un code
 

Pièces jointes

  • CA.zip
    29.2 KB · Affichages: 126
  • CA.zip
    29.2 KB · Affichages: 130
  • CA.zip
    29.2 KB · Affichages: 136

Staple1600

XLDnaute Barbatruc
Re : Planning visuel d'absence (VBA), améliorer le code

Re, bonjour Dranreb

Exene: ce n'est plus le même fichier qu'au départ.
Je te demandais juste de créer manuellement sur ton premier fichier, un résultat final que tu souhaites obtenir
(une sorte d'avant et d'après)

Par exemple, de faire cet exemple manuellemnt
Mon souci, je dois modifier le code à chaque fois que j'ajoute une personne et si une personne prend 2 semaines en juin et une en septembre, il apparaitra sur deux lignes alors que je voudrais visualiser les deux périodes sur une même ligne pour une même personne
 

Dranreb

XLDnaute Barbatruc
Re : Planning visuel d'absence (VBA), améliorer le code

Il suffit d'indiquer son nom au lieu de son adresse:
VB:
Worksheets("Données").Range("Nom").Value
En donnant des noms mnémoniques aux objets feuilles Excel tel que FDonn pour la feuille Données on peut aussi écrire:
VB:
FDonn.[Nom].Value
Dans les deux cas l'expression représente un tableau de Variant des noms des personnes.
À +

Bonjour Staple1600.
 
Dernière édition:

david84

XLDnaute Barbatruc
Re : Planning visuel d'absence (VBA), améliorer le code

Bonjour,
plusieurs choses :
1) j'ai commis il y a peu un fichier de suivi des jours d'absence du lieu de travail ici. Si cela peut te servir...
2) tu trouveras sur le site de JB des planning ressemblant au tien sur le principe, avec des possibilités très sympa
3) concernant ton fichier (et si les liens ci-dessus ne t'offrent pas de résultat qui te satisfasse), le plus simple est peut-être de repartir du début en fournissant un fichier explicitant ton attente, comme suggéré par staple.
A+
 

exene

XLDnaute Accro
Re : Planning visuel d'absence (VBA), améliorer le code

Bonjour,

Vous voudrez bien m'excuser pour ma réponse tardive mais ou j'étais connexion en 56 kbs donc impossible de faire quoi que cela. J'ai testé la proposition de Boisgontier avec des données réelles, le temps de recalcul augmente à mesure que je rajoutes des données mais cela reste très raisonnable, mais j'ai eu beaucoup de mal à comprendre le fonctionnement du code. Le fichier proposé par David est vraiment très bien, bravo !

@+
 

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 325
Membres
103 179
dernier inscrit
BERSEB50