[XL 2007] VBA intégrer non enregistrement fichier

SwissFisch

XLDnaute Nouveau
Bonjour à toutes et à tous,

étant débutant en VBA, je me tourne vers vous pour un petit problème dans un code

j'aimerais que lorsque mon fichier est ouvert en lecture seule et que la personne essaie de modifier quelque chose dans un des tableaux que la personne ne puisse en aucun cas avoir la possibilité d'enregistrement lorsqu'il quitte le fichier.
Par ailleurs j'y ai intégré l'intégration d'un mot de passe automatique lors de la fermeture du fichier.

voila mon code :

Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    If ThisWorkbook.ReadOnly = True Then
        If MsgBox("Ce classeur est ouvert en lecture seule et ne peut pas être enregistrer." & Chr(13) & _
                  "Toutes les modifications seront perdues.", _
                vbExclamation + vbOK, "Attention") = vbOK Then
                If [U]Application.ThisWorkbook.Saved = False[/U] Then
        Else
            
            End If
        End If
    End If
    For Each sh In Sheets
sh.Protect Password:="Mot de passe"
Next sh
ThisWorkbook.Save
End Sub

En vous remerciant d'avance
 
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : [XL 2007] VBA intégrer non enregistrement fichier

Bonjour,

regarde peut être ceci, à voir... :
Code:
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
If ThisWorkbook.ReadOnly Then ThisWorkbook.Saved = True
End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If ThisWorkbook.ReadOnly Then Cancel = True
End Sub

bonne journée
@+
 

Discussions similaires