Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

ouvrir en lecture seule pour certains logins

8 réponses
Avatar
FL
Bonjour,
Comment peut-on faire pour qu'en fonction du login de l'utilisateur
permettre l'ouverture ou non d'un classeur en lecture seule ?

Merci.

8 réponses

Avatar
Poulpor
Bonjour,


1/ Création du fichier cible :
Fichier enregistrer-sous; et dans la boite de dialogue "option", et mettre
un password "toto"

2/ Création du fichier de lancement
- Créer des logins et passwords que l'on mettra dans une feuille
protégée-masquée
- créer une macro d'ouverture du fichier cible avec password "toto"

A mon avis, il y a mieux, mais faut attendre les experts.

Poulpor






Bonjour,
Comment peut-on faire pour qu'en fonction du login de l'utilisateur
permettre l'ouverture ou non d'un classeur en lecture seule ?

Merci.





Avatar
FL
Merci,
Ce que je souhaite c'est qu'au moment de l'ouverture, le code VBA en
fonction de la personne connectée donne l'autorisation de lecture ou pas du
classeur.

Cordialement
FL
"Poulpor" a écrit dans le message de
news:
Bonjour,


1/ Création du fichier cible :
Fichier enregistrer-sous; et dans la boite de dialogue "option", et mettre
un password "toto"

2/ Création du fichier de lancement
- Créer des logins et passwords que l'on mettra dans une feuille
protégée-masquée
- créer une macro d'ouverture du fichier cible avec password "toto"

A mon avis, il y a mieux, mais faut attendre les experts.

Poulpor






Bonjour,
Comment peut-on faire pour qu'en fonction du login de l'utilisateur
permettre l'ouverture ou non d'un classeur en lecture seule ?

Merci.







Avatar
Poulpor
Bonjour,

Ce que tu peux faire, c'est récupérer le login NT, nom d'utilisateur,
adresse IP, ..., et autoriser selon. Il existe des fonctions intégrées / API
windows permettant la récupération de ces informations. Tu as des exemples
sur les sites classiques excel,comme dans la section vba de
http://jacxl.free.fr/cours_xl/cadres.html

poulpor



Je trouve que la méthode d'ouverture par un autre classeur est facilement
gérable. A toi de voir.

poulpor


Merci,
Ce que je souhaite c'est qu'au moment de l'ouverture, le code VBA en
fonction de la personne connectée donne l'autorisation de lecture ou pas du
classeur.

Cordialement
FL
"Poulpor" a écrit dans le message de
news:
Bonjour,


1/ Création du fichier cible :
Fichier enregistrer-sous; et dans la boite de dialogue "option", et mettre
un password "toto"

2/ Création du fichier de lancement
- Créer des logins et passwords que l'on mettra dans une feuille
protégée-masquée
- créer une macro d'ouverture du fichier cible avec password "toto"

A mon avis, il y a mieux, mais faut attendre les experts.

Poulpor






Bonjour,
Comment peut-on faire pour qu'en fonction du login de l'utilisateur
permettre l'ouverture ou non d'un classeur en lecture seule ?

Merci.












Avatar
FL
En fait je veux que toto n'ait accès au fichier qu'en lecture, tous les
autres ayant accès en écriture.
ActiveWorkbook :=ReadOnly ne fonctionne pas...
Voici le code :

Private sub Workbook_Open()
If Application.UserName="toto" then
ActiveWorkbook :=ReadOnly
end if
End Sub

Merci pour votre aide.


"FL" a écrit dans le message de news:
44f2effe$0$27375$
Merci,
Ce que je souhaite c'est qu'au moment de l'ouverture, le code VBA en
fonction de la personne connectée donne l'autorisation de lecture ou pas
du classeur.

Cordialement
FL
"Poulpor" a écrit dans le message de
news:
Bonjour,


1/ Création du fichier cible :
Fichier enregistrer-sous; et dans la boite de dialogue "option", et
mettre
un password "toto"

2/ Création du fichier de lancement
- Créer des logins et passwords que l'on mettra dans une feuille
protégée-masquée
- créer une macro d'ouverture du fichier cible avec password "toto"

A mon avis, il y a mieux, mais faut attendre les experts.

Poulpor






Bonjour,
Comment peut-on faire pour qu'en fonction du login de l'utilisateur
permettre l'ouverture ou non d'un classeur en lecture seule ?

Merci.











Avatar
anonymousA
Bonjour,

le + simple consiste à passer par un fichier intermédiaire qui va
permettre d'acceder à ton fichier dont tu veux qu'il s'ouvre en
lecture seule ou pas. C'est l'utilisateur via la méthode
GetOpenFileName qui ira choisir le fichier destination à ouvrir.
Le fichier intermédiaire se ferme quoiqu'il arrive.

A mettre dans le Workbook_Open du fichier intermédiaire

titi= Application.GetOpenFilename

On Error Resume Next

If Application.UserName = "toto" Then
Workbooks.Open titi, , True, , "mdp"
Else
Workbooks.Open titi, , , , "mdp", "mdp"
End If

ThisWorkbook.Close

A+

FL wrote:
En fait je veux que toto n'ait accès au fichier qu'en lecture, tous les
autres ayant accès en écriture.
ActiveWorkbook :=ReadOnly ne fonctionne pas...
Voici le code :

Private sub Workbook_Open()
If Application.UserName="toto" then
ActiveWorkbook :=ReadOnly
end if
End Sub

Merci pour votre aide.


"FL" a écrit dans le message de news:
44f2effe$0$27375$
Merci,
Ce que je souhaite c'est qu'au moment de l'ouverture, le code VBA en
fonction de la personne connectée donne l'autorisation de lecture ou pas
du classeur.

Cordialement
FL
"Poulpor" a écrit dans le message de
news:
Bonjour,


1/ Création du fichier cible :
Fichier enregistrer-sous; et dans la boite de dialogue "option", et
mettre
un password "toto"

2/ Création du fichier de lancement
- Créer des logins et passwords que l'on mettra dans une feuille
protégée-masquée
- créer une macro d'ouverture du fichier cible avec password "toto"

A mon avis, il y a mieux, mais faut attendre les experts.

Poulpor






Bonjour,
Comment peut-on faire pour qu'en fonction du login de l'utilisateur
permettre l'ouverture ou non d'un classeur en lecture seule ?

Merci.













Avatar
Poulpor
tout à fait OK AnonymousA. Masi je trouve qu'il est bon de protéger les
fichier cible...sinon les gens comprendront vite qu'il ne fait pas passer par
le fichier intermédiaire.

Poulpor




Bonjour,

le + simple consiste à passer par un fichier intermédiaire qui va
permettre d'acceder à ton fichier dont tu veux qu'il s'ouvre en
lecture seule ou pas. C'est l'utilisateur via la méthode
GetOpenFileName qui ira choisir le fichier destination à ouvrir.
Le fichier intermédiaire se ferme quoiqu'il arrive.

A mettre dans le Workbook_Open du fichier intermédiaire

titi= Application.GetOpenFilename

On Error Resume Next

If Application.UserName = "toto" Then
Workbooks.Open titi, , True, , "mdp"
Else
Workbooks.Open titi, , , , "mdp", "mdp"
End If

ThisWorkbook.Close

A+

FL wrote:
En fait je veux que toto n'ait accès au fichier qu'en lecture, tous les
autres ayant accès en écriture.
ActiveWorkbook :=ReadOnly ne fonctionne pas...
Voici le code :

Private sub Workbook_Open()
If Application.UserName="toto" then
ActiveWorkbook :=ReadOnly
end if
End Sub

Merci pour votre aide.


"FL" a écrit dans le message de news:
44f2effe$0$27375$
Merci,
Ce que je souhaite c'est qu'au moment de l'ouverture, le code VBA en
fonction de la personne connectée donne l'autorisation de lecture ou pas
du classeur.

Cordialement
FL
"Poulpor" a écrit dans le message de
news:
Bonjour,


1/ Création du fichier cible :
Fichier enregistrer-sous; et dans la boite de dialogue "option", et
mettre
un password "toto"

2/ Création du fichier de lancement
- Créer des logins et passwords que l'on mettra dans une feuille
protégée-masquée
- créer une macro d'ouverture du fichier cible avec password "toto"

A mon avis, il y a mieux, mais faut attendre les experts.

Poulpor






Bonjour,
Comment peut-on faire pour qu'en fonction du login de l'utilisateur
permettre l'ouverture ou non d'un classeur en lecture seule ?

Merci.

















Avatar
anonymousA
Bonjour,

En l'occurence, le fichier cible est à priori protégé à la fois en
écriture et en lecture.
C'est la discrimination sur le User qui permet de détéerminer si ce
fameux fichier sera ouvert en lecture seule ou en lecture écriture.
L'ouverture manuelle du fichier protégé ( donc en dehors du passage par
le fichier intermédiaire) déclencherait donc l'apparition de l'inputbox
habituel d'Excel sur la demande du mot de passe.

A+


tout à fait OK AnonymousA. Masi je trouve qu'il est bon de protéger les
fichier cible...sinon les gens comprendront vite qu'il ne fait pas passer par
le fichier intermédiaire.

Poulpor




Bonjour,

le + simple consiste à passer par un fichier intermédiaire qui va
permettre d'acceder à ton fichier dont tu veux qu'il s'ouvre en
lecture seule ou pas. C'est l'utilisateur via la méthode
GetOpenFileName qui ira choisir le fichier destination à ouvrir.
Le fichier intermédiaire se ferme quoiqu'il arrive.

A mettre dans le Workbook_Open du fichier intermédiaire

titi= Application.GetOpenFilename

On Error Resume Next

If Application.UserName = "toto" Then
Workbooks.Open titi, , True, , "mdp"
Else
Workbooks.Open titi, , , , "mdp", "mdp"
End If

ThisWorkbook.Close

A+

FL wrote:
En fait je veux que toto n'ait accès au fichier qu'en lecture, tous les
autres ayant accès en écriture.
ActiveWorkbook :=ReadOnly ne fonctionne pas...
Voici le code :

Private sub Workbook_Open()
If Application.UserName="toto" then
ActiveWorkbook :=ReadOnly
end if
End Sub

Merci pour votre aide.


"FL" a écrit dans le message de news:
44f2effe$0$27375$
Merci,
Ce que je souhaite c'est qu'au moment de l'ouverture, le code VBA en
fonction de la personne connectée donne l'autorisation de lecture ou pas
du classeur.

Cordialement
FL
"Poulpor" a écrit dans le message de
news:
Bonjour,


1/ Création du fichier cible :
Fichier enregistrer-sous; et dans la boite de dialogue "option", et
mettre
un password "toto"

2/ Création du fichier de lancement
- Créer des logins et passwords que l'on mettra dans une feuille
protégée-masquée
- créer une macro d'ouverture du fichier cible avec password "toto"

A mon avis, il y a mieux, mais faut attendre les experts.

Poulpor






Bonjour,
Comment peut-on faire pour qu'en fonction du login de l'utilisateur
permettre l'ouverture ou non d'un classeur en lecture seule ?

Merci.

















Avatar
FL
Merci à Poulpor et Anonymous.
Je vais opter finalement pour la protection du classeur. Certains auront
donc un mot de passe à rentrer. Ce n'est pas dramatique
Je vous souhaite une bonne soirée
Cordialement
FL
"anonymousA" a écrit dans le message de news:
44f32a22$0$25928$
Bonjour,

En l'occurence, le fichier cible est à priori protégé à la fois en
écriture et en lecture.
C'est la discrimination sur le User qui permet de détéerminer si ce fameux
fichier sera ouvert en lecture seule ou en lecture écriture.
L'ouverture manuelle du fichier protégé ( donc en dehors du passage par le
fichier intermédiaire) déclencherait donc l'apparition de l'inputbox
habituel d'Excel sur la demande du mot de passe.

A+


tout à fait OK AnonymousA. Masi je trouve qu'il est bon de protéger les
fichier cible...sinon les gens comprendront vite qu'il ne fait pas passer
par le fichier intermédiaire.

Poulpor




Bonjour,

le + simple consiste à passer par un fichier intermédiaire qui va
permettre d'acceder à ton fichier dont tu veux qu'il s'ouvre en
lecture seule ou pas. C'est l'utilisateur via la méthode
GetOpenFileName qui ira choisir le fichier destination à ouvrir.
Le fichier intermédiaire se ferme quoiqu'il arrive.

A mettre dans le Workbook_Open du fichier intermédiaire

titi= Application.GetOpenFilename

On Error Resume Next

If Application.UserName = "toto" Then
Workbooks.Open titi, , True, , "mdp"
Else
Workbooks.Open titi, , , , "mdp", "mdp"
End If

ThisWorkbook.Close

A+

FL wrote:
En fait je veux que toto n'ait accès au fichier qu'en lecture, tous les
autres ayant accès en écriture.
ActiveWorkbook :=ReadOnly ne fonctionne pas...
Voici le code :

Private sub Workbook_Open()
If Application.UserName="toto" then
ActiveWorkbook :=ReadOnly
end if
End Sub

Merci pour votre aide.


"FL" a écrit dans le message de news:
44f2effe$0$27375$
Merci,
Ce que je souhaite c'est qu'au moment de l'ouverture, le code VBA en
fonction de la personne connectée donne l'autorisation de lecture ou
pas
du classeur.

Cordialement
FL
"Poulpor" a écrit dans le message
de
news:
Bonjour,


1/ Création du fichier cible :
Fichier enregistrer-sous; et dans la boite de dialogue "option", et
mettre
un password "toto"

2/ Création du fichier de lancement
- Créer des logins et passwords que l'on mettra dans une feuille
protégée-masquée
- créer une macro d'ouverture du fichier cible avec password "toto"

A mon avis, il y a mieux, mais faut attendre les experts.

Poulpor






Bonjour,
Comment peut-on faire pour qu'en fonction du login de l'utilisateur
permettre l'ouverture ou non d'un classeur en lecture seule ?

Merci.