| ||||||||
Petit astucien | Bonjour à tous, J'ai un tableau dynamique de 13 colonnes (de A à M) dont les saisies débutent en ligne 6. Les colonnes C et M contiennent des formules. Certaines lignes sont identifiées en colonne G par la lettre "R". Je voudrais, à l'aide d'une macro, pouvoir masquer toutes les lignes contenant cette lettre "R" de la colonne G, et bien sûr une autre macro pour afficher toutes les lignes, si besoin est. J'ai essayé un tas de méthodes mais je n'y arrive pas. Cela dépasse mes faibles compétences. Si un spécialiste veut bien m'aider, je l'en remercie par avance. | |||||||
Publicité | ||||||||
| ||||||||
![]() ![]() | Exemple : (1000 est ton nombre de lignes sur lequel la macro est exécutée, à modifier) j'ai démarré ligne à 6 si tes saisies commencent là Sub Masquerlignes() Dim ligne As Integer For ligne = 6 To 1000 If Cells(ligne, 7) = "R" Then Rows(ligne & ":" & ligne).EntireRow.Hidden = True End If Next End Sub Modifié par ZenJP le 11/06/2014 16:05 | |||||||
Petit astucien | Bonsoir, J'ai reporté ta macro dans le tableau, hélas cela ne fonctionne pas. Rien ne se passe et tout se met à clignoter. Merci de t'être penché sur mon problème. J'espère qu'on trouvera la solution. | |||||||
![]() ![]() | Bonsoir, On va essayer d'améliorer la proposition de ZenJP (qui cependant devait fonctionner !) Sub MasquerDémasquerLignesR() Cette macro masque et démasque alternativement (masque au premier lancement) les lignes comportant "R" en colonne G de la feuille active. NB: macro à coller dans un module standard. Modifié par ferrand le 11/06/2014 20:20 | |||||||
Petit astucien | Bonsoir, La macro masquer fonctionne mais elle a mis 2 minutes 30 secondes pour masquer 120 lignes contenant le "R". Si cela est possible, je voudrais 2 macros différentes (que j'affecterai à 2 boutons) l'une pour masquer, l'autre pour afficher. Est-il possible de les rendre plus rapide (car il faudra peut-être 1 heure pour masquer 700 ou 800 lignes. (le tableau en comporte 1000). C'est peut-être beaucoup demander? En tous cas, je vous remercie pour le temps que vous y passerez. | |||||||
![]() ![]() | quillet a écrit : Ton fichier doit présenter un problème ! Quelle cellule est sélectionnée lorsque tu fais Ctrl+Fin ? Une macro (un bouton), c'est pourtant mieux que deux !
| |||||||
Petit astucien | Lorsque je fais Ctrl+Fin, c'est la cellule M1000 qui est sélectionnée. J'avais signalé dans ma demande que les colonnes C et M contenaient des formules. La difficulté vient peut-être de cela. | |||||||
![]() ![]() | La macro ne s'occupe que de la colonne G. Le contenu des autres colonnes ne devrait pas avoir d'incidence ! Le masquage ou le démasquage ne modifient pas de valeurs et ne devraient donc entraîner aucun recalcul (sauf fonctions SOUS.TOTAL ou AGREGAT qui peuvent ne pas prendre en compte les lignes masquées). | |||||||
Petit astucien | Je n'ai pas trouvé le problème. J'ai supprimé les validations de liste déroulantes, les validations d'alertes et même les formules mais la macro s'exécute toujours ligne par ligne et met beaucoup de temps Que puis-faire pour résoudre le problème qui empêche l'exécution correcte de la macro? | |||||||
![]() ![]() | Difficile de savoir ce qu'il en est sans examiner le fichier ! Et faire quelques tests pour tenter de déceler la cause (et trouver une solution) ! | |||||||
|
Les bons plans du moment PC Astuces | Tous les Bons Plans | ||||||||||||||||||
|