Comment afficher ou masquer les lignes en fonction d'une liste de validation.

Sabinoux

XLDnaute Junior
Bonsoir le forum

Je reviens vers vous pour un probleme que je ne sais résoudre.

Comment peut-on grace au choix fait à partir d'une liste de validation, afficher ou masquer certaines lignes d'une feuille sur un 1er onglet et sur l'onglet suivant ? :confused:
L'onglet suivant étant le détail des informations se trouvant sur la feuille.

Merci d'avance à tous
 

Pièces jointes

  • liste test.xls
    34.5 KB · Affichages: 120
  • liste test.xls
    34.5 KB · Affichages: 124
  • liste test.xls
    34.5 KB · Affichages: 121

BERRACHED said

XLDnaute Accro
Re : Comment afficher ou masquer les lignes en fonction d'une liste de validation.

Salut,sabinoux

Utilise dans chaque changement dans la liste de validation le fonction :
EntireRow.Hidden = True sinon tu réalise ça a l'aide de l'enregistreur macro il est très éfficace

Cordialement
 

kjin

XLDnaute Barbatruc
Re : Comment afficher ou masquer les lignes en fonction d'une liste de validation.

Bonsoir,
Un début de piste, en attendant un peu plus de précisions quant au données de la feuille "détail"
A+
kjin
 

Pièces jointes

  • liste test-v1.zip
    15 KB · Affichages: 79

Sabinoux

XLDnaute Junior
Re : Comment afficher ou masquer les lignes en fonction d'une liste de validation.

Bonsoir,
Un début de piste, en attendant un peu plus de précisions quant au données de la feuille "détail"
A+
kjin

Bonjour à tous les deux

Kjin,
Merci pour ce début de piste, mais est-on obligé de mettre dans la liste uniquement des chiffres parce que dans mon cas, je dois mettre obligatoirement du texte à coté des chiffres ?
Les axes iront obligatoirement de 3 (minimum) à 7 (maximum)

Pour les données de la feuille détail, il faudrait que si 4 est choisi dans lale 1er onglet, les 4 premieres pages de l'onglet "Détail" apparaisent et ainsi de suite.
Les données à proprement parlé seront choisies dans un usf d'une vingtaine de lignes mais là le travail n'est pas encore finalisé (je suis encore dessus)

Je me tiens à votre disposition si besoin de plus de renseignements.
 

job75

XLDnaute Barbatruc
Re : Comment afficher ou masquer les lignes en fonction d'une liste de validation.

Bonjour Sabinoux, le forum,

Voyez si le fichier joint vous convient.

Les plages masquées sont définies par des noms du genre : "F1troisaxes" et "F2troisaxes" pour chaque feuille.

A+

Edition : ajouté Application.OnRepeat dans la macro
 

Pièces jointes

  • Sabinoux.zip
    16.5 KB · Affichages: 88
Dernière édition:

Sabinoux

XLDnaute Junior
Re : Comment afficher ou masquer les lignes en fonction d'une liste de validation.

Bonjour Sabinoux, le forum,

Voyez si le fichier joint vous convient.

Les plages masquées sont définies par des noms du genre : "F1troisaxes" et "F2troisaxes" pour chaque feuille.

A+

Edition : ajouté Application.OnRepeat dans la macro

Bonsoir Job75, kjin, le forum

Merci à tous les deux pour vos solutions. ;)

Job75, le fichier me convient parfaitement, il faudrait que je sois difficile pour qu'il en soit autrement.
Le fait de définir chaque plage masquée exemple de F1troisaxes=Feuil1!$57:$65536 devrait me mettre, en modifiant le 65536, de masquer uniquement les zones de 4 à 7 axes car il me reste d'autres informations sous la zone 7eme axe de l'onglet feuille1 à imprimer.
Cette option est donc parfaite.

Il semble que le temps de réaction sur les onglets avec cette methode soit moins rapide qu'avec la methode proposée par kjin (methode que je n'ai pas réussi à appliquer à l'onglet feuillle "détail") est ce que cela vient de mon micro ?
 

job75

XLDnaute Barbatruc
Re : Comment afficher ou masquer les lignes en fonction d'une liste de validation.

Bonsoir Sabinoux,

Le masquage jusqu'à la ligne 65536 est chez moi immédiat. Mon ordi tourne à 2 Ghz.

Si vous masquez seulement jusqu'à la limite de la zone 7, peut-être que cela ira plus vite chez vous. En fait je ne vois vraiment pas pourquoi votre ordi traine (la macro est très courte, il n'y a aucune boucle).

A+
 

Sabinoux

XLDnaute Junior
Re : Comment afficher ou masquer les lignes en fonction d'une liste de validation.

Bonsoir Sabinoux,

Le masquage jusqu'à la ligne 65536 est chez moi immédiat. Mon ordi tourne à 2 Ghz.

Si vous masquez seulement jusqu'à la limite de la zone 7, peut-être que cela ira plus vite chez vous. En fait je ne vois vraiment pas pourquoi votre ordi traine (la macro est très courte, il n'y a aucune boucle).

A+

Rebonsoir Job75

J'ai effectué les modifications en limitant les zones bien définies et je retrouve ce même probleme de lenteur, j'ignore d'où cela peut provenir mais aucun soucis cette petite gene n'est pas une grosse difficulté.

Par contre je me permets de poser une nouvelle question sachant que j'ai, dans un onglet, une liste d'axes "prédéfinis" (ex. colonne B) et un format pour les chiffres (ex. colonne C) , comment puis je faire pour les affecter (de 1 à 3 choix par axe, soit axe 1 = 1a, 1b, 1c) à l'onglet feuil3 ="détail" ?

Par exemple dans mon fichier liste d'axe en B3 l'affecter à l'axe 1
sachant que les choix faits pour axe 1 ne peuvent être repris pour l'axe 2 ....

Les explications sont sans doute nebuleuses, aussi je joins un bout de fichier.

Dois-je mettre en place un usf avec case à cocher ?
 

Pièces jointes

  • liste test 2.zip
    11.9 KB · Affichages: 53

Sabinoux

XLDnaute Junior
Re : Comment afficher ou masquer les lignes en fonction d'une liste de validation.

Bonjour job75, kjin

Et avec ce fichier joint, est ce plus explicite ? :eek:

L'utilisateur du fichier aura à sa disposition une liste d'option pré établie ceci afin d'éviter les erreurs et devra donner des éléments chiffrés dont le format dépendra de l'option (ex. augmenter la surface de X %......)
Il devra choisir de 1 à 3 options par axe (un peu comme pour un véhicule : option = cuir, peinture metalisé .... )
Sachant que l'option ne peut être choisie qu'une seule et unique fois pour l'ensemble des axes de l'onglet "détail".

Est ce moins nébuleux ainsi ?
 

Pièces jointes

  • Sabinoux V2.zip
    18.4 KB · Affichages: 60
  • Sabinoux V2.zip
    18.4 KB · Affichages: 62
  • Sabinoux V2.zip
    18.4 KB · Affichages: 63
Dernière édition:

job75

XLDnaute Barbatruc
Re : Comment afficher ou masquer les lignes en fonction d'une liste de validation.

Bonjour Sabinoux, le forum,

Oui c'est plus clair et en fait j'ai vraiment compris quand je me suis aperçu que dans la liste des axes colonnes B il y a 21 valeurs soit 3 X 7, toutes les valeurs peuvent finalement être utilisées.

Les exemples que vous donnez dans la feuille Détail : AXE1 - A, AXE1 - B, se retrouvent en fait dans la liste des axes colonnes B, vous auriez pu les y mettre...

Je vais voir s'il est possible de faire quelque chose avec des listes de validation variables, dans la feuille ou dans un USF.

Une chose encore à préciser : pour la colonne E de la feuille Détail que copie-t-on exactement dans la liste, un format ou format+contenu ?

A+
 

Sabinoux

XLDnaute Junior
Re : Comment afficher ou masquer les lignes en fonction d'une liste de validation.

Re,

"la liste des axes colonnes B il y a 21 valeurs soit 3 X 7," ceci est un pur hasard .... en fait la liste originale que je n'ai pas repris ici est plus longue d'ailleurs elle risque d'évoluer ....

Pour lacolonne E, seule la mise en forme devra être reprise, les chiffres à inscrire étant à la charge de l'utilisateur directement depuis l'onglet "détail"

Autre petite remarque, cette liste d'option est une aide (automatisation de la saisie avec une contrainte obligatoire, ne jamais reprendre sur le même onglet plusieurs fois la même option) mais il peut également ajouter directement le texte lui-même (type liste option = texte libre) dans l'hypothese où aucune option ne lui convienne ou encore d'autres options s'offrent à lui.

Merci beaucoup pour l'interet que vous manifestez à mes questions et pour les solutions que vous y apportez.

Bonne journée
 

job75

XLDnaute Barbatruc
Re : Comment afficher ou masquer les lignes en fonction d'une liste de validation.

Re

Le fait que l'utilisateur puisse entrer autre chose que ce qu'il y a dans la liste complique les choses. Cela veut dire qu'il peut modifier la liste.

De plus, il pourra entrer plusieurs fois la même chose s'il modifie la syntaxe (inversion de mots, fautes d'orthographes)...

A+
 

job75

XLDnaute Barbatruc
Re : Comment afficher ou masquer les lignes en fonction d'une liste de validation.

Re,

Voyez déjà si le fichier joint vous convient.

Feuille Détail, il y a 3 listes de validation par zone d'axe colonne D, mais on peut entrer ce que l'on veut dans les cellules.

Les 2 macros SelectionChange et Change sont dans le code de la feuille Détail.

Je n'ai encore rien fait pour ajouter les options personnalisées : on ne peut tout de même pas entrer n'importe quoi dans la liste !

A+

Edition : excusez-moi, le fichier était erroné suite à du copier-coller. Ci-joint le bon fichier.
 

Pièces jointes

  • Sabinoux V2.zip
    21.7 KB · Affichages: 47
  • Sabinoux V2.zip
    21.7 KB · Affichages: 44
  • Sabinoux V2.zip
    21.7 KB · Affichages: 48
Dernière édition:

job75

XLDnaute Barbatruc
Re : Comment afficher ou masquer les lignes en fonction d'une liste de validation.

Bonsoir Sabinoux,

Voici une nouvelle version. J'ai mis pas mal de commentaires pour aider à la comprendre.

Les nouveautés :
- une macro est ajoutée dans le Module1, les 2 macros évènementielles l'utilisent
- seules les cellules où la liste de validation est installée sont traitées
- si la valeur entrée a déja été utilisée, l'entrée est annulée
- si la valeur entrée n'est pas dans la liste des axes, un message demande à l'utilisateur s'il veut la mémoriser, auquel cas elle est entrée dans la liste.

A+
 

Pièces jointes

  • Sabinoux V3.zip
    25.3 KB · Affichages: 79

Discussions similaires

Statistiques des forums

Discussions
312 839
Messages
2 092 700
Membres
105 511
dernier inscrit
karimdauphins