Affichage colonnes selon

Résolu/Fermé
jean300 Messages postés 374 Date d'inscription jeudi 11 août 2016 Statut Membre Dernière intervention 13 janvier 2020 - 26 févr. 2018 à 13:13
jean300 Messages postés 374 Date d'inscription jeudi 11 août 2016 Statut Membre Dernière intervention 13 janvier 2020 - 6 mars 2018 à 17:42
Bonjour,
Une question hard pour moi, que j'adresse aux doués que vous êtes.
Je voudrais que la correspondance du Nom saisi dans le TextBox1 de l'Userform1 et reporté en D7 de la feuille Param, que ça recherche dans les tableaux les différentes colonnes à afficher selon le Nom saisi et la feuille active.
Mon fichier :
https://www.cjoint.com/c/HBAmkkxqqbO



A voir également:

19 réponses

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
5 mars 2018 à 09:24
Bonjour,

décidément

1/ tu répond à coté aux questions que je te pose et, notamment, tu ignores mes remarques sur l'absence de la feuille "accueil" ...

2/ Pour "Private Sub Workbook_BeforeClose(Cancel As Boolean) "
tu me dis que tu ne comprends pas pour ne pas dire que tu ne cherches pas à comprendre ; note qu'il y a l'aide en ligne sur VbA

Il y a aussi plein de documentation sur VBA: voir google ou autres moteurs. Ce n'est en pompant à droite et à gauche que tu arriveras à quelque chose

3/Vraiment désolé, car je suis parti sur des données erronées.
En plus tu fais très mal et très légèrement ton boulot de Maître d'ouvrage: Pas grave, les bénévoles sont là pour passer des heures à faire et à refaire des codes :-(((

Bonne continuation
1
julia Namor Messages postés 524 Date d'inscription jeudi 27 mars 2014 Statut Membre Dernière intervention 13 janvier 2024 33
1 mars 2018 à 12:47
Bonjour
Ceci devrait faire l'affaire

https://www.cjoint.com/c/HCblU05cP7s

Cordialement
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
1 mars 2018 à 15:08
Bonjour Jean, Julia

Bonjour,

ce que j'ai compris de ta demande

lorsque tu ouvres le classeur, on est sur la (future) feuille "acceuil" , l'admin a toutes les feuilles visibles, les autres toutes les feuilles fermées (very hidden)

si je m'appelle Jean, je n'ai accès qu'aux feuilles 1,2,5 et dans ces 3 feuilles aux colonnes marquées d'une croix. par ex: feuil1 colonnes A, B, E à J etc...
l'affectation de ces colonnes est elle variable (évolution du logiciel) ?
la solution de Julia considère que c'est inamovible et elle a peut-^tre raison?

je crois avoir lu sur un autre post, que tu voulais interdire "d'ouvrir" les colonnes non sélectionnées ?


0
jean300 Messages postés 374 Date d'inscription jeudi 11 août 2016 Statut Membre Dernière intervention 13 janvier 2020 14
1 mars 2018 à 16:13
Bonjour julia, michel,
Je vous remercie de vous intéresser à ma demande (pas facile à expliquer), je vais essayer.
julia : ton fichier est parasité chez moi.

Les noms sont appeler à changer ainsi que les colonnes à afficher; mais mise à jour dans la feuille Param.
Au maximum 5 noms.
Au l'ouverture du fichier, toutes les feuilles seront bien very hidden sauf la feuille Accueil et toutes les colonnes masquées à l'exception des colonnes A:B

Ce que je voudrais obtenir :
Selon le nom accès aux seules feuilles autorisées (X dans le 1er tableau)
affichage des colonnes selon le nom et si (X dans le second tableau) et impossibilité d'afficher les colonnes masquées.

Le classeur devra être protégé par Vba

Difficulté, les noms sont appelés à changer, mais il suffit de mettre la feuille (Param) à jour.
Je souhaiterai la même chose pour les colonnes (là ça fait 5 mois que je sèche pour faire l'association).
Cependant, il est fort probable que ces colonnes ne bougerons plus.

ps: je travail avec Excel 2003

Avec ce code, je met le nom de la feuille active en G7 pensant que c'est utile.
Sub feuil()
'Nom feuille active en G7
Dim nom As String
nom = ActiveSheet.Name
If nom = "Param" Then
Exit Sub
Else
Sheets("Param").Select
Cells(7, 7) = nom
End If
End Sub
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
1 mars 2018 à 16:24
Ok je vais m'y mettre demain, sois patient...

0
julia Namor Messages postés 524 Date d'inscription jeudi 27 mars 2014 Statut Membre Dernière intervention 13 janvier 2024 33
1 mars 2018 à 19:15
,,
le fichier compatible v2003
https://www.cjoint.com/c/HCbsoj0Go8Y
cdlt
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
2 mars 2018 à 09:42
Bonjour,

Désolé, malgré le dégel, il faut que j'aille aider à déneiger les maisons de personnes agées. donc, je n'aurais guère de temps aujourdhui.

le gros problème est qu'il semble qu'il y a eu plusieurs personnes qui ont écrit des codes et la cohérence en pâtit.

question: le classeur se trouve t'il sur le serveur de la société?
0
jean300 Messages postés 374 Date d'inscription jeudi 11 août 2016 Statut Membre Dernière intervention 13 janvier 2020 14
2 mars 2018 à 10:50
Bonjour à vous,
Je vais regarder ton travail Julia.
Pour te répondre Michel, la réponse est non le classeur se trouve dans le bureau d'un responsable dont plusieurs personnes se servent de l'ordinateur.
Merci à vous deux.
0
jean300 Messages postés 374 Date d'inscription jeudi 11 août 2016 Statut Membre Dernière intervention 13 janvier 2020 14
2 mars 2018 à 15:30
Re,
Bonjour Julia,
J'ai regardé ton classeur, mais les colonnes ne se masquent pas... ?
0
julia Namor Messages postés 524 Date d'inscription jeudi 27 mars 2014 Statut Membre Dernière intervention 13 janvier 2024 33
2 mars 2018 à 21:02
Bonjour
je suis sure que ton souhait est faisable .Mais fais un petit effort dans les explications , parce que là depuis une demie heure j'ai beau retourner ta demande , je séche..
alors
Selon le nom accès aux seules feuilles autorisées (X dans le 1er tableau)
c'est quoi le x ?
affichage des colonnes selon le nom et si (X dans le second tableau)
Pas clair du tout
Du coup j'attends plus d'explications...
cdlt
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
Modifié le 3 mars 2018 à 09:05
bonjour

l'erreur a été de ne pas mettre la feuille "accueil". il faut donc la créer et transporter le bouton "accès" dans cette feuille
le lancement des procédures doit masquer toutes les feuille sauf "accueil" en "veryhidden"

Private Sub Workbook_Open()
Dim Ws As Worksheet
'--------------------cache toutes feuilles hormis acceuil
For Each Ws In ThisWorkbook.Worksheets
With Ws
If .Name <> "acceuil" Then
'MsgBox "ok" 'test
'.Visible = xlSheetVisible pour essais et maintenance
.Visible = xlSheetVeryHidden
End If
End With
Next Ws
'-------------------Affiche l'Userform
Userform1.Show
End Sub


Mais il y a de nombreuses incohérences et inutilités dans les codes de la demande initiale de Jean ----> boulot piégé pour Julia et moi :-/
0
jean300 Messages postés 374 Date d'inscription jeudi 11 août 2016 Statut Membre Dernière intervention 13 janvier 2020 14
3 mars 2018 à 16:06
Bonjour à vous deux
Je remet le classeur avec explications.
Je n'arrive pas à renommer la feuille 1 en Accueil
Je crains d'être dépassé

https://www.cjoint.com/c/HCdpfZUx4i3
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
3 mars 2018 à 18:20
Bonsoir,

c'est fait pour ne faire apparaitre que les feuilles du nom donné par D7 et afficher les colonnes suivant le nom et la feuille (ma bidouille permet des changements de feuille visible et de colonne apparente.

je vérifie dès que possible cette bidouille Si Ok, je te la poste

Ensuite , j'attaquerai la fermeture du classeur pour rendre le classeur en l'état de départ pour le prochain intervenant.
je te laisserai un topo sur du pdf. quand, je ne sais pas...
0
julia Namor Messages postés 524 Date d'inscription jeudi 27 mars 2014 Statut Membre Dernière intervention 13 janvier 2024 33
4 mars 2018 à 00:16
Bonjour
peut être ça

https://www.cjoint.com/c/HCdxoHJUDQY
cdlt
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
Modifié le 4 mars 2018 à 09:05
Bonjour Julia, Jean


pour Jean

1/Dans les colonnes que l'on montre ( par ex: D,G,K)dans une feuille: peut-on écrire ou seulement Lire ?
2/ Dans les Colonnes A & B, l'opérateur écrit il qqchose et si oui dans dans quelles(s) colonne(s) ?


Pour faire du VBA, il faut des renseignements précis et exhaustifs
J'attends ces renseignements pour pouvoir terminer.

Pour Julia et Jean:

Puis je caresser l'espoir que vous lisiez le post 10 de cette discussion?


0
jean300 Messages postés 374 Date d'inscription jeudi 11 août 2016 Statut Membre Dernière intervention 13 janvier 2020 14
4 mars 2018 à 15:43
Bonjour Julia, Michel,
Julia, je vais regarder ton classeur.
Michel, oui les utilisateurs mettent à jour la base, donc ils écrivent, rectifient et supprime éventuellement dans toutes les colonnes dont ils ont accès pour chacun d'eux.
Le fait de masquer des colonnes tient essentiellement à la confidentialité des renseignements très pointus.

La feuille Accueil sera nommée Choix et toujours visible, toutes les autres feuilles en xlSheetVeryHidden visible seulement si autorisé.

En vous remerciant.
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
4 mars 2018 à 18:39
Cela ne répond pas à mes questions... :-/

après vérif et re-re-re vérif pour déjouer les nombreux pièges ci joint proposition (il pleuvait cet aprem et ça m'a occupé!

https://mon-partage.fr/f/RuQq1LYx/

avant d'essayer, regarde bien la procédure "before close" dans le module thisworkbook

comme annoncé un peu + haut post12
0
jean300 Messages postés 374 Date d'inscription jeudi 11 août 2016 Statut Membre Dernière intervention 13 janvier 2020 14
Modifié le 4 mars 2018 à 19:44
Mon point de départ a été :
https://www.commentcamarche.net/faq/37104-vba-excel-mot-de-passe-et-utilisateurs
pour l'affichage des feuilles selon l'utilisateur.
Je souhaitais le même principe, si possible, pour les colonnes.
Je répète que je ne maitrise pas le vba

Tu écris : regarde bien la procédure "before close" dans le module thisworkbook
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'Saved = False 'en cours de réalisation ou d'essais
Saved = True
End Sub

Je ne comprends pas, désolé.
Je te remercie Michel de t'impliquer autant pour me rendre ce service, ainsi que Julia.
0
jean300 Messages postés 374 Date d'inscription jeudi 11 août 2016 Statut Membre Dernière intervention 13 janvier 2020 14
4 mars 2018 à 22:56
Bonjour Julia, Michel,
Vraiment désolé, car je suis parti sur des données erronées.
Le classeur joint rectifie cela.
En vous priant de bien vouloir m'excuser.

https://www.cjoint.com/c/HCev4APksI3
0
jean300 Messages postés 374 Date d'inscription jeudi 11 août 2016 Statut Membre Dernière intervention 13 janvier 2020 14
6 mars 2018 à 17:42
Je comprends que vous m'en vouliez.
0