La sécurité Excel est assez importante pour votre travail. Dans cet article, nous présenterons la méthode permettant de définir différents privilèges pour différents utilisateurs par Excel VBA.
Dans notre article précédent Comment créer une fenêtre de connexion pour protéger votre classeur Excel, nous avons introduit la méthode pour créer une fenêtre de connexion pour votre classeur Excel. Mais lorsque plusieurs utilisateurs doivent accéder au document, vous devez définir des paramètres supplémentaires. De plus, vous devez garantir que ces utilisateurs n'apporteront pas de mauvaises modifications au fichier. Suivez maintenant les étapes ci-dessous et voyez comment terminer cette tâche.
Définir différents privilèges
Supposons maintenant que trois commerciaux doivent modifier ce fichier. Le nom et le mot de passe sont définis comme le montre l'image ci-dessous :
Et chaque personne devra modifier une certaine feuille de calcul.
- Appuyez sur les touches de raccourci "Alt + F11" sur le clavier pour ouvrir l'éditeur Visual Basic.
- Et puis insérez un nouveau formulaire utilisateur dans l'éditeur.

- Dans cette étape, insérez deux étiquettes, deux zones de texte et deux boutons dans le formulaire utilisateur.
- Et puis modifiez la légende du formulaire utilisateur et les éléments que vous insérez à l'étape 3. Vous pouvez également vous référer à l'image ci-dessous :
- Après cela, changez le "PasswordChar" en "*" pour la deuxième zone de texte.
- Après cela, double-cliquez sur le formulaire utilisateur.
- Saisissez ensuite les codes suivants dans le module :
Private Sub CommandButton1_Click() Dim objTargetWorksheet As Worksheet If (TextBox1.Value = "John" And TextBox2.Value = "234") _ Or (TextBox1.Value = "Amy" And TextBox2.Value = "345") _ Or (TextBox1.Value = "Paul" And TextBox2.Value = "456") Then Me.Hide: Application.Visible = True For Each objTargetWorksheet In ActiveWorkbook.Worksheets If objTargetWorksheet.Name = TextBox1.Value Then objTargetWorksheet.Unprotect Password:=12345 Else objTargetWorksheet.Protect Password:=12345, DrawingObjects:=True, Contents:=True, Scenarios:=True End If Next Else MsgBox "Please input the right user name and the right password" End If End Sub Private Sub CommandButton2_Click() ThisWorkbook.Application.Quit End Sub Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) ThisWorkbook.Application.Quit End Sub
Dans les codes, nous protégerons d'autres feuilles de travail. Et les utilisateurs ne peuvent modifier que les feuilles de calcul correspondantes. Vous pouvez également modifier les mots de passe en fonction de vos besoins.
- Après cela, double-cliquez sur "ThisWorkbook" dans le projet VBA.
- Et puis entrez les codes suivants dedans:
Private Sub Workbook_Open() Application.Visible = False: UserForm1.Show End Sub
- Afin d'empêcher les utilisateurs de modifier les codes VBA, vous devez définir un mot de passe pour les projets VBA. Dans notre précédent article Comment protéger par mot de passe les codes VBA dans votre feuille de calcul Excel, nous avons introduit des méthodes. Vous pouvez également définir un mot de passe spécial.
- À la fin, enregistrez ce fichier Excel.
- La prochaine fois que vous ouvrirez le fichier, le formulaire utilisateur n'apparaîtra pas. Vous devez cliquer sur le bouton "Activer le contenu" dans le fichier.
- Et puis vous verrez la fenêtre "Connexion". Entrez un nom et le mot de passe dans les deux zones de texte.
- Après cela, cliquez sur le bouton "Connexion" dans la fenêtre.
Pour le moment, John ne peut que modifier sa feuille de calcul. Il est incapable de modifier d'autres feuilles de calcul ou les codes VBA. De plus, à l'exception des trois commerciaux, personne d'autre ne peut ouvrir ce fichier sans le mot de passe. La prochaine fois que vous aurez une telle exigence, vous pourrez également définir une telle fenêtre de connexion pour le classeur.
Reconnaître le problème de la corruption d'Excel
Parfois, Excel se corrompt en raison de nombreux facteurs. Avant de voustarPour réparer vos fichiers, vous devez identifier le problème ainsi que les raisons de la catastrophe des données. De plus, si vous ne connaissez rien à la récupération de données, vous pouvez réparer Excel xlsx corrompu en utilisant un outil tiers. Avec l'algorithme de pointe, cet outil peut gérer almost toutes les erreurs Excel.
Introduction de l'auteur:
Anna Ma est une experte en récupération de données dans DataNumen, Inc., qui est le leader mondial des technologies de récupération de données, y compris réparer docx corrompu et produits logiciels de réparation Outlook. Pour plus d'informations, visitez www.datanumen.com



