N'afficher que les lignes de leur demande (ticketing)
bidounet84
Messages postés
412
Date d'inscription
Statut
Membre
Dernière intervention
-
bidounet84 -
bidounet84 -
Bonjour,
Bonjour,
J'utilise actuellement un fichier Excel où j'enregistre toutes les demandes des utilisateurs, via déjà des macros sur d'autres onglets cela met en forme et ordonne les tâches. Cette partie fonctionne et répond à ce que je souhaite.
Je souhaiterais pour que mes utilisateurs aient une meilleure vision du délai de leur tâche leur mettre le fichier à disposition.
En revanche sur cette onglet "PLANNING" je souhaite qu'ils ne puissent voir que les lignes qui les concernent.
Par exemple en colonne A se trouve le nom du demandeur.
Je voudrais que quand il ouvre le fichier cela lui masque les lignes qui ne le concernent pas et qu'ils ne puissent pas les voir du tout.
Une idée, une piste de comment gérer cela ? Je pense qu'il faudra sûrement un pré-fichier où l'utilisateur saisie un identifiant et un mot de passe.
Bonjour,
J'utilise actuellement un fichier Excel où j'enregistre toutes les demandes des utilisateurs, via déjà des macros sur d'autres onglets cela met en forme et ordonne les tâches. Cette partie fonctionne et répond à ce que je souhaite.
Je souhaiterais pour que mes utilisateurs aient une meilleure vision du délai de leur tâche leur mettre le fichier à disposition.
En revanche sur cette onglet "PLANNING" je souhaite qu'ils ne puissent voir que les lignes qui les concernent.
Par exemple en colonne A se trouve le nom du demandeur.
Je voudrais que quand il ouvre le fichier cela lui masque les lignes qui ne le concernent pas et qu'ils ne puissent pas les voir du tout.
Une idée, une piste de comment gérer cela ? Je pense qu'il faudra sûrement un pré-fichier où l'utilisateur saisie un identifiant et un mot de passe.
Configuration: Windows / Chrome 70.0.3538.102
A voir également:
- N'afficher que les lignes de leur demande (ticketing)
- Afficher toutes les lignes masquées excel ✓ - Forum Excel
- Partage de photos en ligne - Guide
- Afficher mot de passe wifi android - Guide
- Ajoutez à la liste de contacts ana le goff, inscrite le 27 novembre 2015, dans la catégorie i. puis triez les contacts en les classant : par ordre alphabétique de leur nom de famille (critère principal), puis par date du plus récent au plus ancien (critère secondaire). quel mot apparaît à la verticale dans la colonne "catégorie" entre les lignes 200 et 209 (en-tête compris) ? ✓ - Forum Word
- Afficher les commentaires word - Guide
4 réponses
Bonjour,
2 solutions:
un onglet par utilisateur, on ouvre l'onglet de l’intéressé par mdp (l'admin reste libre d'ouvrir tout)
ou on cache les lignes sauf celle de l’intéressé par mdp
pour le 1ère proposition, j'ai un modèle et pour la seconde se servir de l'enregistreur de macro, car c'est en fonction de la configuration de la feuille et de son évolution!
2 solutions:
un onglet par utilisateur, on ouvre l'onglet de l’intéressé par mdp (l'admin reste libre d'ouvrir tout)
ou on cache les lignes sauf celle de l’intéressé par mdp
pour le 1ère proposition, j'ai un modèle et pour la seconde se servir de l'enregistreur de macro, car c'est en fonction de la configuration de la feuille et de son évolution!
Mon planning est global sur un seul onglet, plus facile à lire pour moi.
Donc je partirais sur ta 2ème solution.
On est bien d'accord qu'on partirait sur un formulaire de connexion avec un premier fichier Excel qui en ouvrirait un 2ème ?
Donc je partirais sur ta 2ème solution.
On est bien d'accord qu'on partirait sur un formulaire de connexion avec un premier fichier Excel qui en ouvrirait un 2ème ?
pas nécessairement, il suffit de mettre ce code à adapter dans ThisWorkbook:
faire Alt F11 pour accèder à l'éditeur ensuite sélectionner ThisWorkbook en haut à gauche
@+ Le Pivert
faire Alt F11 pour accèder à l'éditeur ensuite sélectionner ThisWorkbook en haut à gauche
Option Explicit Dim mdp As Variant Private Sub Workbook_Open() Rows("1:20").EntireRow.Hidden = True ' nombre de lignes cachées 'on récupere le mot de passe mdp = InputBox("Veuillez entrer votre mot de passe", "Mot de passe") Select Case mdp Case "1234" ' Alain Rows("1:6").EntireRow.Hidden = False Case "2341" ' Jean Rows("7:13").EntireRow.Hidden = False Case "3412" ' Claude Rows("14:20").EntireRow.Hidden = False Case "moi" ' admin Rows("1:20").EntireRow.Hidden = False 'on affiche toutes les lignes pour l'admin End Select End Sub
@+ Le Pivert
Pour pallier ce problème ajouter une feuille Sommaire avec ce code:
Option Explicit Dim mdp As Variant Private Sub Workbook_BeforeClose(Cancel As Boolean) Sheets("Feuil1").Rows("1:20").EntireRow.Hidden = True ' nombre de lignes cachées adapter nom de la feuille End Sub Private Sub Workbook_Open() Sheets("Sommaire").Select 'adapter nom de la feuille 'on récupere le mot de passe mdp = InputBox("Veuillez entrer votre mot de passe", "Mot de passe") Select Case mdp Case "1234" ' Alain Sheets("Feuil1").Rows("1:6").EntireRow.Hidden = False 'adapter nom de la feuille Case "2341" ' Jean Sheets("Feuil1").Rows("7:13").EntireRow.Hidden = False Case "3412" ' Claude Sheets("Feuil1").Rows("14:20").EntireRow.Hidden = False Case "moi" ' admin Sheets("Feuil1").Rows("1:20").EntireRow.Hidden = False 'on affiche toutes les ligne pour l'admin End Select End Sub
Quand tu sélectionnes les lignes avec un clic droit tu peux tout afficher.
Pour empêcher cela il faut mettre ceci:
et pour rétablir ceci:
ce qui donne:
voilà
@+ Le Pivert
Pour empêcher cela il faut mettre ceci:
Application.CommandBars("row").Controls("&Afficher").Enabled = False
et pour rétablir ceci:
Application.CommandBars("row").Controls("&Afficher").Enabled = True
ce qui donne:
Private Sub Workbook_Open() derligne = Sheets("Feuil1").Range("A" & Rows.Count).End(xlUp).Row 'derniere ligne Sheets("Feuil1").Rows("1:" & derligne).EntireRow.Hidden = True ' nombre de lignes cachées adapter nom de la feuille Sheets("Sommaire").Select 'adapter nom de la feuille 'on récupere le mot de passe mdp = InputBox("Veuillez entrer votre mot de passe", "Mot de passe") Select Case mdp Case "1234" ' Alain Cherche ("Alain") lignedebut = ligne Cherche ("Jean") lignefin = ligne Sheets("Feuil1").Rows(lignedebut & ":" & lignefin - 1).EntireRow.Hidden = False 'adapter nom de la feuille Application.CommandBars("row").Controls("&Afficher").Enabled = False Case "2341" ' Jean Cherche ("Jean") lignedebut = ligne Cherche ("Claude") lignefin = ligne Sheets("Feuil1").Rows(lignedebut & ":" & lignefin - 1).EntireRow.Hidden = False 'adapter nom de la feuille Application.CommandBars("row").Controls("&Afficher").Enabled = False Case "3412" ' Claude Cherche ("claude") lignedebut = ligne Sheets("Feuil1").Rows(lignedebut & ":" & derligne).EntireRow.Hidden = False 'adapter nom de la feuille Application.CommandBars("row").Controls("&Afficher").Enabled = False Case "moi" ' admin Sheets("Feuil1").Rows("1:" & derligne).EntireRow.Hidden = False 'on affiche toutes les lignes pour l'admin Application.CommandBars("row").Controls("&Afficher").Enabled = True End Select End Sub
voilà
@+ Le Pivert
2 petites choses à ajouter:
remettre la commande Afficher à la fermeture comme ceci:
et ensuite si l'on clique sur annuler ou sur le croix de l'input Box, fermer le classeur sans l'enregistrer:
a mettre après la case moi comme ceci
@+ Le Pivert
remettre la commande Afficher à la fermeture comme ceci:
Private Sub Workbook_BeforeClose(Cancel As Boolean) Application.CommandBars("row").Controls("&Afficher").Enabled = True End Sub
et ensuite si l'on clique sur annuler ou sur le croix de l'input Box, fermer le classeur sans l'enregistrer:
Case "moi" ' admin Sheets("Feuil1").Rows("1:" & derligne).EntireRow.Hidden = False 'on affiche toutes les lignes pour l'admin Application.CommandBars("row").Controls("&Afficher").Enabled = True Case Else ActiveWorkbook.Close False 'ferme sans sauvegarde End Select
a mettre après la case moi comme ceci
@+ Le Pivert
Bonjour,
Merci pour tous ces conseils cs_Le Pivert.
J'ai essayé d'adapter à mon fichier. Ca fonctionne plutôt bien. J'ai mis un peu de temps à répondre pour essayer de bien me débrouiller tout seul.
2, 3 choses si c'est encore possible.
A quoi sert exactement les 2 derniers codes que tu m'as donné ?
Et j'ai constaté aussi qu'à l'ouverture, si je met un mot de passe bidon qui n'existe pas dans la macro, le fichier s'ouvre sur l'onglet "ACCUEIL", puis la personne peut passer dans l'autre onglet puis Afficher l'ensemble des tâches qu'il n'aurait pas dû voir.
La fonction de ne pas pouvoir démasquer les lignes fonctionne bien quand la personne a mis un bon mot de passe.
Mais lorsqu'elle met un mot de passe bidon le fichier est accessible sans protection.
Merci pour tous ces conseils cs_Le Pivert.
J'ai essayé d'adapter à mon fichier. Ca fonctionne plutôt bien. J'ai mis un peu de temps à répondre pour essayer de bien me débrouiller tout seul.
2, 3 choses si c'est encore possible.
A quoi sert exactement les 2 derniers codes que tu m'as donné ?
Et j'ai constaté aussi qu'à l'ouverture, si je met un mot de passe bidon qui n'existe pas dans la macro, le fichier s'ouvre sur l'onglet "ACCUEIL", puis la personne peut passer dans l'autre onglet puis Afficher l'ensemble des tâches qu'il n'aurait pas dû voir.
La fonction de ne pas pouvoir démasquer les lignes fonctionne bien quand la personne a mis un bon mot de passe.
Mais lorsqu'elle met un mot de passe bidon le fichier est accessible sans protection.