Transposition de données sur deux tableau

9 réponses
Avatar
Franck Robjent
Bonjour =C3=A0 tous,

quelqu'un pourrait-t-il m'aider =C3=A0 r=C3=A9aliser
une commande vba permettant de transposer
un tableau Excel avec les m=C3=AAmes informations dispos=C3=A9es
de fa=C3=A7on diff=C3=A9rentes pour 3 types de donn=C3=A9s:
- nom des agents
- dates
- postes occup=C3=A9s
Pour que ce soit explicite suivez ce lien.

https://cjoint.com/c/HAhtMpCHMnA

Merci

9 réponses

Avatar
Michd
Bonjour,
Un copier-coller en cochant "Transposer" devrait faire l'affaire... en
quelques secondes.
A ) sélectionne la plage A5:H12
B ) copie la plage dans le presse-papier
C ) Sélectionne la cellule K5
D ) Menu contextuel / collage spécial / Valeur - ne pas oublier de cocher la
case "Transposé".
E ) Un clic sur le bouton "OK" et le travail est fait.
Pourquoi veux-tu faire ça en VBA?
MichD
Avatar
Michd
Dans le fichier que tu as publié, remplis le tableau 2 pour au moins usager
afin que je comprenne le travail que tu veux faire!
MichD
"Franck Robjent" a écrit dans le message de groupe de discussion :
Bonjour MichD,
merci pour votre réponse mais ce n'est pas le résultat escompté.
En fait dans le 2ème tableau je voudrais le nom des agents dans les
cellules et non pas leur poste. C'est un positionnement hebdo
répétitif que je dois adapter pour l'équipe qui est habitué à utilisé
le tableau 2 or l'extraction logicielle de mon planning me donne le tableau
1.
Les données postes et noms d'agent sont inversé.
C'est pour cela que c'est un peu compliqué pour moi.
Avatar
Franck Robjent
J'ai finalisé le tableau 2 comme il devrai aboutir.
Manuellement il est simple mais comme j'ai 33 agents
et je dois faire toute les semaines. Mais je veux juste
comprendre le process sur 1 échantillon si possible.
https://cjoint.com/c/HAhwZUonZ3A
Merci.
Avatar
Michd
Voici ton fichier avec une macro qui fait le travail.
https://www.cjoint.com/c/HAimPqa23hF
MichD
Avatar
Michd
Dans le tableau final si tu veux obtenir seulement les noms avec seulement
la première lettre en majuscule, remplace dans la procédure cette ligne de
code (un oubli!)
R(B) = Rg(X, 1)
Par :
R(B) = Application.Proper(Rg(X, 1))
MichD
Avatar
Michd
Avec un peu plus de temps, ce fichier est plus complet
https://www.cjoint.com/c/HAiq1QyNC4i
Michd
Avatar
Michd
Une version améliorée : https://www.cjoint.com/c/HAiuaubSDQi
MichD
Avatar
Michd
Désolé, il y avait un petit oubli sur la version précédente :
https://www.cjoint.com/c/HAiuhjx2oVi
MichD
Avatar
Franck Robjent
Un très grand merci Michd!
Vous m'inspirez le respect devant autant de maîtrise
et vous avez toute ma considération.
C'est parfait!
J'espère que cette publication pourra aider d'autre personnes sur le g roupe.
Merci encore et bonne continuation.
Amicalement Franck.