XL 2016 Gestion de liste transposée dans une autre feuille avec décalage d'une colonne et exclusion de certains éléments

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Webperegrino

XLDnaute Impliqué
Supporter XLD
Le Forum,

Dans le fichier ci-annexé, j’essaie de transposer correctement une liste de prénoms de la feuille « Liste » vers la ligne n° 4 de la feuille « Gestion_&_Placemt ».

Il faut aussi réussir à exclure certains prénoms dans le résultat.

Pour cela j'ai essayé avec trois compositions de lignes VBA (trois boutons d'activation en 2ème feuille).

Pour continuer à exploiter cette feuille, l’objectif est de décaler les prénoms d’une colonne sur la ligne 4 et à partir de L4.
Seule les calculs du Bouton « 3 – MAJ Prénoms » semblent me produire ce que je désire, mais à peu près :
- j'ai en effet des prénoms manquants en fin de la transposition (Zina notamment)
- la fin du transpose de la liste est désastreux (Yves se centralise sur toutes les cellules restantes, en alignement centré sur plus de deux colonnes)

Pouvez-vous jeter un coup d’œil sur ces lignes VBA pour me signaler les erreurs, les manques et m’expliquer comment faire fonctionner plus intelligemment tant la méthode de départ (Bouton vert n° 1) que réussir le bon fonctionnement du bouton n° 3 ?

Merci pour votre aide

Webperegrino
 
Solution
Re,

Vos trois boutons font la meme chose donc pourquoi 3 ou 2


J'ai cree un fichier car il y avait un serieux probleme avec l'affichage du dernier prenom ZINA
Visible entre deux colonnes apres l'avant dernier prenom mais ecrit au bon endroit

Vous remettrez les couleurs sur la ligne si vous decidez d'utiliser le fichier.
Avec ce fichier pas besoin d'astuce pour le dernier prenom

Pour votre dernier fichier, bouton 2 le code pour le test
VB:
lgLst = 3
    col = 12
    While Sheets("Liste").Cells(lgLst, 2).Value <> "" And (Sheets("Liste").Cells(lgLst, 2).Value <> "ALAIN·LL" Or Sheets("Liste").Cells(lgLst, 2).Value <> "CHRISTINE" Or dest <> "LOÏC" Or Sheets("Liste").Cells(lgLst, 2).Value <> "NICOLE" Or Sheets("Liste").Cells(lgLst...
Le Forum,
Bonjour Oneida,
Merci d'intervenir.
Oui, c'est de ma faute : au dernier moment j'avais renommé le nom de la feuille sans passer sur les lignes de commandes VBA.
Je corrige cela et replace le fichier en lieu et place en #1 (et ici), mais je doute que cela fonctionne même avec cette correction...

... en effet, avec cette correction :
- Bouton vert : la liste s'arrête à Yves (qui prend anormalement 4 colonnes), et Zina n'apparaît pas en bout de liste reportée. mais avantage : les prénoms non désirés ont bien été retirés dans la liste de destination
- Bouton n° 2 : ça galère sérieusement : je suis obligé de faire un Ctrl + Pause pour en sortir et les prénoms non désirés restent dans la liste reportée
- Bouton 3 : m^me effet que le bouton vert Yves prend 4 cellules au lieu de deux, Zina n'apparaît pas en bout de liste reportée.
Webperegrino
 

Pièces jointes

Re,
mais je doute que cela fonctionne
Ben oui, mais y a deja a chercher donc une erreur n'arrange pas les chose


Correction, avais pas pris le bon fichier mais des similitudes

Bouton vert: Zina apparait en FZ
Bouton 2: tester si cellule non vide
VB:
    While Sheets("Liste").Cells(lgLst, 2).Value <> "" And (Sheets("Liste").Cells(lgLst, 2).Value <> "ALAIN·LL" Or Sheets("Liste").Cells(lgLst, 2).Value <> "CHRISTINE" Or dest <> "LOÏC" Or Sheets("Liste").Cells(lgLst, 2).Value <> "NICOLE" Or Sheets("Liste").Cells(lgLst, 2).Value <> "VINCENT")

Bouton 3, je regarde
 
Dernière édition:
Oneida,
Bouton vert : oui en effet Zina est en FZ (182)
Je regarde si je peux appliquer la façon du n° 3 pour exclure Alain·LL... Vincent de la liste finale.
Bouton 2 avec ta ligne rectificative : à nouveau Ctrl+Pause pour sortir...
Je continue mes recherches et corrections de mon côté.
 
Le Forum,
Oneida,
Pourquoi toujours cette anomalie en cellule CT4 (colonne 98), avec un "ajout parasite de ZZ et ZZZ" après ZINA dans la liste...
... et toujours pas de "ZINA" dans le reporté, entre YVES et ZZ.
C'est vraiment curieux !

J'ai appliqué une astuce de nettoyage de bout de plage en ligne 4 pour placer les derniers prénoms correctement (voir le vba des deux seuls boutons conservés, car avec le dernier bouton abandonné ça patauge sérieusement dans la macro qui tourne, et tourne...).

Ci-joint fichier évolué.
 

Pièces jointes

Re,

Vos trois boutons font la meme chose donc pourquoi 3 ou 2


J'ai cree un fichier car il y avait un serieux probleme avec l'affichage du dernier prenom ZINA
Visible entre deux colonnes apres l'avant dernier prenom mais ecrit au bon endroit

Vous remettrez les couleurs sur la ligne si vous decidez d'utiliser le fichier.
Avec ce fichier pas besoin d'astuce pour le dernier prenom

Pour votre dernier fichier, bouton 2 le code pour le test
VB:
lgLst = 3
    col = 12
    While Sheets("Liste").Cells(lgLst, 2).Value <> "" And (Sheets("Liste").Cells(lgLst, 2).Value <> "ALAIN·LL" Or Sheets("Liste").Cells(lgLst, 2).Value <> "CHRISTINE" Or dest <> "LOÏC" Or Sheets("Liste").Cells(lgLst, 2).Value <> "NICOLE" Or Sheets("Liste").Cells(lgLst, 2).Value <> "VINCENT")
        Cells(4, col) = UCase(Sheets("Liste").Cells(lgLst, 2).Value)
        col = col + 2
        lgLst = lgLst + 1
    Wend
 

Pièces jointes

Dernière édition:
Bonsoir Oneida,

Vos trois boutons font la même chose donc pourquoi 3 ou 2 :
J'avais différentes approches de lignes de vba piochées ici ou là, ou ai créé certaines, avec une vérification par mise en place de ces trois boutons.
Mais au final, bien sûr, je n'aurai qu'un bouton avec les lignes qui fonctionneront le mieux et le plus vite.

Merci pour cette proposition de fichier rectifié #8 : je vais l'étudier d'ici demain matin et reviens vers vous.
Merci encore pour votre aide et votre trouvaille.
Bonne soirée,
Webperegrino
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour