Bonjour à tous,
voici un code ci-dessous qui fonctionne super bien.
Mais je souhaiterais effectuer un changement afin d'avoir une meilleure compréhension et une meilleure mise en page.
Actuellement, comme vous pouvez le voir, le code va chercher des informations dans des colonnes.
Je souhaiterais juste que les pages qui deviennent visibles ne soit plus dans une colonne, mais une ligne correspondant aux résultats juste avant.
Le code doit prendre le User, le MP ainsi que le nom de l'utilisateur.
Je souhaiterais alors qu'il ouvre les onglets de la ligne y rapportant (L,QH,1,2,3,4,...)
Merci d'avance pour votre aide
voici un code ci-dessous qui fonctionne super bien.
Mais je souhaiterais effectuer un changement afin d'avoir une meilleure compréhension et une meilleure mise en page.
Actuellement, comme vous pouvez le voir, le code va chercher des informations dans des colonnes.
Je souhaiterais juste que les pages qui deviennent visibles ne soit plus dans une colonne, mais une ligne correspondant aux résultats juste avant.
Le code doit prendre le User, le MP ainsi que le nom de l'utilisateur.
Je souhaiterais alors qu'il ouvre les onglets de la ligne y rapportant (L,QH,1,2,3,4,...)
Merci d'avance pour votre aide
VB:
On Error Resume Next
Application.ScreenUpdating = False
'on defini un pointeur
Pointeur = 0
'on affiche la feuille Vierge
Sheets("L").Visible = True
'on va dessus
Sheets("L").Activate
'on planque toutes les autres
For x = 1 To ThisWorkbook.Sheets.Count
If Sheets(x).Name <> "L" Then Sheets(x).Visible = xlSheetVeryHidden
Next
'on saisit le user
User = InputBox("Veuillez saisir votre nom d'utilisateur", "Utilisateur")
'on saisit le mot de passe
MDP = InputBox("Veuillez saisir votre mot de passe", "Mot de passe")
'Derniere ligne du tableau de la feuille DroitsUsers pour boucler dessus
DerLigne = Sheets("DroitsUsers").Range("A65536").End(xlUp).Row
'on boucle pour trouver les occurences, x=2 car je pars du principe que la premiere ligne _
contient les entetes de colonne
For x = 2 To DerLigne
'si ce qu'il y a dans la colonne1 (Colonne A : user) = le user saisi _
ET ce qu'il y a dans la colonne2 (Colonne B : mot de passe)
If Worksheets("DroitsUsers").Cells(x, 1) = User And Worksheets("DroitsUsers").Cells(x, 2) = MDP Then
'on affiche la feuille définié en colonne3 (Colonne C : Onglet autorisé)
'on affiche la feuille correspondante
FeuilleVisible = Worksheets("DroitsUsers").Cells(4)
Sheets(FeuilleVisible).Visible = True
'on va dessus
Sheets(FeuilleVisible).Activate
'on se met un pointeur pour voir si on trouve quelque chose, si on trouve rien on quittera
Pointeur = Pointeur + 1
Worksheets("L").[D10] = Sheets("DroitsUsers").Cells(x, 3) 'info de la colonne D : en feuille L
ElseIf User = "JD" And MDP = "Jpc42*" Then
For I = 1 To ThisWorkbook.Sheets.Count
If Sheets(I).Name <> "Intro" Then Sheets(I).Visible = True
Next
Worksheets("L").[D10] = "Jonathan Dethier"
Application.ScreenUpdating = True
Exit Sub
End If
Next x
Application.ScreenUpdating = True