Création d'une macro pour regrouper des lignes

Gaia

XLDnaute Nouveau
Bonjour à tous,

J'aurai besoin d'un peu d'aide car je dois créer une macro et je ne sais absolument pas comment m'y prendre :(

Dans l'onglet "Absence" du fichier ci-joint, je dois déterminer le nombre d'arrêts non consécutifs pour chaque salarié. J'aurai donc besoin que la macro fasse plusieurs choses :

1.qu'elle regroupe en une seule ligne, les absences consécutives qui ont le même motif. Exemple pour le salarié "pouet", je devrais avoir au final

- code MAS du 17/03/2012 au 20/03/2012
- code AN du 15/03/2012 au 16/03/2012


2.que si la date de début d'absence est antérieur à la date de début indiquée en C2, il faudrait que la date de début d'absence soit remplacée par la date indiquée en C2. Idem pour la date de fin, si elle est postérieur à la date indiquée en F2, il faudrait qu'elle soit remplacée par cette valeur.


3.que les lignes soient triées par matricule (du plus petit au plus grand) et ensuite par date d'absence (de la plus ancienne à la plus récente)


4.et enfin que la macro soit rattachée au bout "mise à jour calcul" qui se situe en haut de la feuille, et qu'elle soit applicable sur toute la feuille.

Je me doute que cela doit représenter un peu (voire beaucoup :confused:) de travail, mais si quelqu'un pouvait m'aider, ça serait vraiment aide précieuse :eek:

Merci

Gaia
 

Pièces jointes

  • CONTROLE_PRIME_DE_PRODUCTION.xls
    570 KB · Affichages: 80
  • CONTROLE_PRIME_DE_PRODUCTION.xls
    570 KB · Affichages: 87
  • CONTROLE_PRIME_DE_PRODUCTION.xls
    570 KB · Affichages: 85

Littledave

XLDnaute Junior
Re : Création d'une macro pour regrouper des lignes

Salut Gaia,

Je te joins ton fichier modifié avec une macro faisant le tri des employés par matricule+motif abs+date début absence et ensuite concatène les absence consécutives.

C'est un truc vite fait alors ne regarde pas trop le code, il n'est pas optimisé du tout (^_^) mais c'est un premier jet qui te permettra peut être de le modifier et d'aller plus loin.

@++
David
 

Pièces jointes

  • CONTROLE_PRIME_DE_PRODUCTION.xls
    261.5 KB · Affichages: 154
  • CONTROLE_PRIME_DE_PRODUCTION.xls
    261.5 KB · Affichages: 147
  • CONTROLE_PRIME_DE_PRODUCTION.xls
    261.5 KB · Affichages: 134

Gaia

XLDnaute Nouveau
Re : Création d'une macro pour regrouper des lignes

Bonjour David,

Merci beaucoup c'est exactement ce qu'il me fallait, on ne pouvait pas faire mieux :D !!

Il ne me reste plus qu'à trouver comment modifier les dates de début et fin d'absence et ce sera parfait.

Merci pour ton aide.

Gaia
 

Gaia

XLDnaute Nouveau
Re : Création d'une macro pour regrouper des lignes

Bonjour à tous,

Me revoilà avec mon problème de macro. Apparemment la macro ne s'applique pas à l'ensemble de la colonne mais seulement à quelques lignes. :(

Quelle partie du code je dois modifier pour que la macro s'applique à toute la colonne?

Merci

Gaia
 

KenDev

XLDnaute Impliqué
Re : Création d'une macro pour regrouper des lignes

Bonjour Gaïa,

Tu as été un peu chiche avec la quantité de données sur la feuille Absence pour les tests...

Un fichier joint selon ce que j'ai compris, à tester avec plus de données donc.

Il manque à mon sens une sécurité pour sauvegarder temporairement la feuille Absence avant traitement pour pouvoir faire un roll back en cas d'anomalie sur le résultat attendu.

Cordialement

KD
 

Pièces jointes

  • gugu.xls
    189.5 KB · Affichages: 93

Gaia

XLDnaute Nouveau
Re : Création d'une macro pour regrouper des lignes

Re bonjour,

Désolée pour le manque d'infos, je débute dans le VBA et j'ai un peu de mal :(

J'ai testé le fichier que tu as envoyé qui semble fonctionné avec un import de 188 lignes. Le soucis est qu'entre temps j'ai légèrement modifié la mise en page (je te joins la nouvelle trame avec la première macro modifiée).

Problèmes que je rencontre encore :

  • Après coup, je me dis qu'il serait mieux de trier par nom plutôt que par matricule.
  • Les formules des colonnes H,I,J et K se remplacent automatiquement par le résultat une fois la macro lancée. Comment faire pour que le détail de la formule reste affichée?
  • L'idée d'une sauvegarde avant le lancement de la macro serait géniale mais sachant que j'ai déjà du mal avec un simple tri :)rolleyes:), je pense que c'est pas pour demain :D

Je crois que c'est tout :confused:

En tout cas, je te remercie du temps que tu me consacres :eek:

Gaia
 

Pièces jointes

  • TEST.xls
    154.5 KB · Affichages: 81
  • TEST.xls
    154.5 KB · Affichages: 117
  • TEST.xls
    154.5 KB · Affichages: 100
Dernière édition:

Discussions similaires

Réponses
46
Affichages
854
Réponses
11
Affichages
510

Statistiques des forums

Discussions
312 203
Messages
2 086 183
Membres
103 152
dernier inscrit
Karibu