Gestion des évènements sous XL2003

minoslha

XLDnaute Nouveau
Quelqu'un peut il m'aider ?
L'ouverture du fichier Test1.xls doit se faire en lecture seule.
ActiveWorkbook.ChangeFileAccess Mode:=xlReadOnly
Seul le nom compte de la session "Perso" doit pouvoir enregistrer ce document.
Une fois enregistré, il faut retrouver le statut lecture seule. Si le doc doit être fermé seul le possesseur du compte "Perso" peut ou non sauvegarder celui ci. Bien sure, tout ceci doit se passer sans que des messages d'erreurs ou d'alertes viennent polluer l'écran de l'utilisateur. voici le fichier en question : Regarde la pièce jointe Test1.xls
L'ouverture en lecture seule, c'est Ok
L'enregistrement pour le compte "Perso" semble Ok hormis les messages d'alertes (très perturbants), mais impossible de remettre ce doc en lecture seule quand l'enregistrement est terminé. Il faudrait un évènement "AfterSave"...
Je bloque, mais peut être que vous, vous avez la solution ?
Merci d'avance
 

Pièces jointes

  • Test1.xls
    28 KB · Affichages: 58
  • Test1.xls
    28 KB · Affichages: 60

bérylion

XLDnaute Occasionnel
Re : Gestion des évènements sous XL2003

salut

je tenterais une autre approche :

place ce bout de code uniquement dans le module thisworkbook et ça empeche tout le monde d'enregistrer, sauf si la session est ouverte sous le nom "perso"

Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If Not Environ("username") = "perso" Then Cancel = True: ThisWorkbook.Saved = True
End Sub

plus besoin de lecture seule à l'ouverture.
 

Statistiques des forums

Discussions
312 492
Messages
2 088 905
Membres
103 982
dernier inscrit
krakencolas