Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2013 Empécher toutes modifications d'un classeur

treza88

XLDnaute Occasionnel
Bonjour à tous,

Je voudrais savoir comment (par vba si possible) empêcher toutes modifications dans un classeur.
Le classeur se trouvant sur le réseau, je voudrais que sur un PC spécifique il s'ouvre en read only pour pouvoir, même sil a été ouvert sur le PC précédemment cité, l'ouvrir sur un autre pc en modification.

Pour l'ouverture en read only pas de soucis :

VB:
Set classeur = Application.Workbooks.Open(ThisWorkbook.Path & "\" & "Fichier_a_ouvrir", ReadOnly:=True)

Il faut juste le conditionner avec un paramètre du PC pour que ça ne le fasse que sur ce PC.

Mais pour la suite, comment puis je bloquer le lancement de macro que sur ce pc et ce classeur ?

Comment transformer ce classeur en classeur de visualisation uniquement uniquement sur ce PC ?

Merci d'avance.
 

treza88

XLDnaute Occasionnel
Bonjour, j'avance tout doucement.

Je peux protéger le classeur entier en fonction du PC, c'est un point supplémentaire.
Mais mes bouton macro sur les feuilles sont toujours actif.
Comment puis je les rendre inactif ?
 

bof

XLDnaute Occasionnel
Bonjour,
Et toussa... avec une boule de cristal ?
Je vois, je vois...
En fonctions du contenu faire une macro pour le Workboon_Open qui rend invisible toutes les shapes indésirables ou plus exactement :
Rendre toutes les shapes indésirables invisibles et dans le Workbook_Open faire que la macro rende tous les shapes visibles sur ce PC.
A+
 

crocrocro

XLDnaute Occasionnel
bonjour à tous,
il me parait plus simple de jouer sur la protection du classeur ou des feuilles avec mot de passe, avec toujours sur l'événement Workbook_Open comme l'indique bof
Code:
If Application.UserName <>"c'est moi" Then
    ThisWorkbook.Protect "password"
Else
    ThisWorkbook.unProtect "password"
End If
 

treza88

XLDnaute Occasionnel

Oui c'est prévu, mais la protection de la feuille ou du classeur n'empêche pas de lancer une macro par un bouton déjà installé sur la feuille.

Et c'est sur ce point que bof parlait de rendre invisible les boutons ou autres éléments pour les rendre inactif. ils deviennent invisible donc impossible de lancer la macro lier au bouton.
 

TooFatBoy

XLDnaute Barbatruc
Bonjour,

Toutafé !

Dans cette macro on doit pouvoir remplacer le Protect par ChangeFileAccess :
VB:
ActiveWorkbook.ChangeFileAccess Mode:=xlReadOnly
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…