![]() |
|
Forum
|
|
|
#1 (permalink) |
|
Guest
Messages: n/a
|
Bonjour,
J'ai besoin d un petit coup de pouce. J'ai un fichier excel avec 5 onglets. l objectif est de restreindre l acces en visibilite et ecriture des acces a 5 types de users : - 4 users qui n auraint acces chacun qu a une feuille - 1 "administrateur" qui a acces a l ensemble des feuilles. Ma methode (un peu artisanale) 1, faire une 1ere feuille "authetification" . et dans ce cas la, il me manque une fonction de la forme : =Si(test1=vrai;"alors je vais dans telle feuille";0) Est ce que qqn saurait comment faire "alors je vais dans telle feuille"! Merci |
| ANNONCES | |||
|
|
|
|
#2 (permalink) |
|
Guest
Messages: n/a
|
Bonjour,
Via une macro avec la fonction "inputbox" tu pourrais définir les mots de passe de chaque utilisateur et de l'administrateur. Chaque utilisateur serait invité à encoder son mot de passe et ne lui permettrait d'utiliser que les feuilles dont l'accès a été définit par l'administrateur. Cependant tu peux penser le système de deux façons : Solution 1 : A l'ouverture du fichier tu arrives sur une feuilles contenant des icônes qui permettent à l'utilisateur d'utiliser par exemple les feuilles 2 et 4 et un autre les feuilles 2 et 3 Solution 2 : A l'ouverture du fichier, un mot de passe est demandé à l'utilisateur pour ouvrir le fichier. Si le mot de passe est correct, l'utilisateur voit les feuilles le concernant. Dans le cas contraire, le fichier se referme automatiquement. Voilà un 1er jet d'idée. Dans l'attente de te lire A+ Dan |
|
|
#3 (permalink) |
|
Guest
Messages: n/a
|
Merci Dan pour ton aide.. mais je t avoue que j essaie de mettre en application ton idee mais j ai du mal avec la creation de la macro...
te serait il possible d entrer un peu plus dans le detail stp. Merci LL |
|
|
#4 (permalink) |
|
Guest
Messages: n/a
|
Bonsoir,
Voici un fichier exemple. Cas 1 : Tu tapes le mot de passe "Admin" et tu vois toutes les feuilles Cas 2 : Tu taoes le mot de passe "Toto" et tu ne vois que les feuilles 1 & 4 Bon travail A+ Dan |
|
|
#6 (permalink) |
|
Guest
Messages: n/a
|
Dan,
Y a quelque chose que je ne comprends pas... Tout marchait vendredi et la j ai un message d erreur L erreur vient au niveau de ActiveWindow.SelectedSheets.Visible = False Mais je ne comprends pas d ou vient l erreur de syntaxe Ci dessous le code: Sub Auto_Open() ActiveWindow.DisplayWorkbookTabs = False For Each sh In Sheets sh.Visible = True Next sh Range("A1").Select Message End Sub Sub Message() Dim Message, Title, Default, MyValue ' Définit le message. Message = "Enter your password" Title = "Password" ' Définit le titre. Default = "" ' Définition la valeur par défaut. ' Affiche le message, le titre et la valeur par défaut. MyValue = InputBox(Message, Title, Default) Select Case MyValue Case Is = "C3": Mac1 Case Is = "C3 Pluriel": Mac2 Case Is = "Berlingo": Mac3 Case Is = "Citroen": Mac4 Case Is = "Admin": Mac5 Case Else: Wrongpassword End Select End Sub Sub Wrongpassword() msg = "Wrong password" ' Définit le message. Style = vbOKOnly + vbInformation ' Définit les boutons. Title = "Password" ' Définit les titres. Answer = MsgBox(msg, Style, Title) ActiveWorkbook.Close SaveChanges:=False End Sub Sub Mac1() ' ' Macro2 Macro ' Macro enregistrée le 17/10/03 par Lionel Layerle ' Sheets(Array("MARK", "Forhandlerbud", "November", "PS", "RH", "RF")).Select ActiveWindow.SelectedSheets.Visible = False ActiveWindow.DisplayWorkbookTabs = True End End Sub Sub Mac2() ' ' Macro3 Macro ' Macro enregistrée le 17/10/03 par Lionel Layerle ' Sheets(Array("MARK", "Forhandlerbud", "November", "HE", "RH", "RF")).Select ActiveWindow.SelectedSheets.Visible = False ActiveWindow.DisplayWorkbookTabs = True End End Sub Sub Mac3() ' ' Macro4 Macro ' Macro enregistrée le 17/10/03 par Lionel Layerle ' Sheets(Array("MARK", "Forhandlerbud", "November", "HE", "PS", "RF")).Select ActiveWindow.SelectedSheets.Visible = False ActiveWindow.DisplayWorkbookTabs = True End End Sub Sub Mac4() ' ' Macro5 Macro ' Macro enregistrée le 17/10/03 par Lionel Layerle ' Sheets(Array("MARK", "Forhandlerbud", "November", "HE", "PS", "RH")).Select ActiveWindow.SelectedSheets.Visible = False ActiveWindow.DisplayWorkbookTabs = True End End Sub Sub Mac5() ' ' Macro6 Macro ' Macro enregistrée le 17/10/03 par Lionel Layerle ' For Each sh In Sheets sh.Visible = True Next sh Range("A1").Select ActiveWindow.DisplayWorkbookTabs = True End End Sub ActiveWorkbook.Save End Sub L erreur vient au niveau de ActiveWindow.SelectedSheets.Visible = False |
|
|
#7 (permalink) |
|
Guest
Messages: n/a
|
Bonsoir Lionel,
J'ai beau controler tes macros. Tout semble correct. Il faut prodéder par étape : 1. Verifie que tu n'as pas changé le nom d'une feuille ou introduit un espace par mégarde. Il faut que les noms de feuille repris dans les macros MAC () correspondent excatement aus noms de feuille (ici MARK,...) 2. Verifie si tu as cette erreur à chaque mot de passe utilisé. 3. Crée une nouvelle macro avec un nouveau mot de passe qui permet l'utilisation de la feuille1, puis de la feuille 2, ... Fais savoir ce qui se passe A+ Dan |
| ANNONCES | |
| Liens sociaux |
| Outils de la discussion | |
|
|