• Initiateur de la discussion Initiateur de la discussion pilounet
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

P

pilounet

Guest
Peut on restreindre, exemple l'ouverture de fichiers Excel en fonction de la session bien évidemment je travail en réseau
Je comprend le code vba merci, et bonjour à tous
🙂
 
Re : réseau

bonsoir,

une possibilité

clic droit sur le fichier => onglet sécurité puis modifier => cocher "refuser" a toutes les options
( ne pas faire cette manipulation pour le comte qui a les droits d'ouvertures du fichier)

bonjour merci de m'avoir répondu mais clic droit sur le fichier => onglet sécurité
pas vue du tout ? merci de m'aider

j'ai outils ,option , sécurité ? mais cela ne doit pas être cela ,click droit sur le fichier me donne pas onglet sécurité ? un détail me manque ,es que tu ouvre le fichier ? (je ne suis pas si fort que cela merci )
 
Re : réseau

utilisateurs_autorises = Array("villapat", "Patrick", "Jerome_et_Vanessa")

utilisateur = Environ("username")

permission_donnee = False

For i = 0 To UBound(utilisateurs_autorises)

If utilisateur = utilisateurs_autorises(I) Then

permission_donnee = True
Exit For

End If

Next i
 
Re : réseau

Re


Code:
utilisateurs_autorises = Array("villapat", "Patrick", "Jerome_et_Vanessa")
 
utilisateur = Environ("username")
 
permission_donnee = False
 
For i = 0 To UBound(utilisateurs_autorises)
 
If utilisateur = utilisateurs_autorises(I) Then
 
permission_donnee = True
Exit For
 
End If
 
Next i

Euh la, je ne comprend pas tout😕!

Bon normalement, si ton réseau est bien conçu, tu devrais avoir l'onglet sécurité dans lers options de chaque fichier de façon a pouvoir attribuer des droits sur des personnes ou des groupes de personnes.

Sinon voir avec l'informaticien de ton entreprise.
 
Dernière édition:
Re : réseau

Bonjour pilounet, CC, Michel, Jean-Bernard,

S'il ne s'agit que de quelques personnes autorisées, pourquoi ne pas mettre un mot de passe à l'ouverture (par Enregistrer sous/Outils/Options générales) et distribuer le mot de passe à ces quelques personnes ?

Car, si tu autorises ou non à partir de code, il suffit d'ouvrir sans activer les macros et le fichier est ouvert par n'importe qui.

A voir...

Bonne journée et WE.

Jean-Pierre
 
Re : réseau

Re


Code:
utilisateurs_autorises = Array("villapat", "Patrick", "Jerome_et_Vanessa")
 
utilisateur = Environ("username")
 
permission_donnee = False
 
For i = 0 To UBound(utilisateurs_autorises)
 
If utilisateur = utilisateurs_autorises(I) Then
 
permission_donnee = True
Exit For
 
End If
 
Next i

Euh, la moi pas tout comprendre😕!

Bon normalement, si ton réseau est bien conçu, tu devrais avoir l'onglet sécurité dans lers options de chaque fichier de façon a pouvoir attribuer des droits sur des personnes ou des groupes de personnes.

Sinon voir avec l'informaticien de ton entreprise.
Option Explicit

Const feuille_a_ne_pas_cacher = "feuille_visible"
Const mot_de_passe = "bubulle" 'mot de passe utilisé pour cacher les feuilles, tu n'as pas besoin de le retenir

Private Sub Workbook_BeforeClose(Cancel As Boolean)

cacher_toutes_feuilles_sauf_une ThisWorkbook, feuille_a_ne_pas_cacher, True, mot_de_passe
ThisWorkbook.Save

End Sub

Private Sub Workbook_Open()

Dim i As Integer
Dim utilisateur As String
Dim utilisateurs_autorises As Variant
Dim permission_donnee As Boolean

utilisateurs_autorises = Array("villapat", "Patrick", "Jerome_et_Vanessa")

utilisateur = Environ("username")

permission_donnee = False

For i = 0 To UBound(utilisateurs_autorises)

If utilisateur = utilisateurs_autorises(i) Then

permission_donnee = True
Exit For

End If

Next i

If permission_donnee = False Then
ThisWorkbook.Close
Else
montrer_toutes_feuilles ThisWorkbook, True, mot_de_passe
End If

End Sub







' ****************FONCTIONS QUE TU PEUX METTRE DANS UN MODULE*******************************************
Sub cacher_toutes_feuilles_sauf_une(wk As Workbook, exceptionSheet As String, protect As Boolean, password As String)

Dim sh As Worksheet

For Each sh In wk.Worksheets
If sh.Name <> exceptionSheet Then
sh.protect password:=password
If protect = True Then
sh.Visible = False
End If
End If
Next

End Sub


Sub montrer_toutes_feuilles(wk As Workbook, unprotect As Boolean, password As String)

Dim sh As Worksheet

For Each sh In wk.Worksheets
sh.Visible = True
If unprotect = True Then
sh.unprotect password:=password
End If
Next

End Sub
bonjour à tous et merci de tout à tous +
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
7
Affichages
307
Réponses
33
Affichages
2 K
Réponses
5
Affichages
205
  • Question Question
Microsoft 365 Remplissage auto
Réponses
14
Affichages
381
Réponses
40
Affichages
2 K
Réponses
18
Affichages
1 K
Retour