interdire la sauvegarde d\'un fichier si...

wachoo31

XLDnaute Occasionnel
interdire la sauvegarde d'un fichier si...

Bonsoir a vous toutes et tous les membres de ce forum

J'ai un fichier avec des feuilles et menus protégés par mot de passe et quand on quitte le fichier il y a chaque fois une boite de dialogue qui demande si l'on veux enregistrer les changements ou non

J'aurai voulu savoir comment je peu interdire la sauvegarde ou l'enregistrement de ce fichier même sous un autre nom si on a pas le bon mot de passe

Message édité par: wachoo31, à: 17/03/2005 18:15
 

Romuald

XLDnaute Nouveau
Re:interdire la sauvegarde d'un fichier si...

Sur la méthode Private Sub Workbook_BeforeClose(Cancel As Boolean) de ThisWorkbook tu mets le code Application.ThisWorkbook.Saved = True

ainsi, il va considérer que ton classeur est sauvegardé et donc le fermer sans boîte de dialogue
 

Creepy

XLDnaute Accro
Re:interdire la sauvegarde d'un fichier si...

Hello,

Moi j'avais fait ca pour empecher la sauvegarde par les bouton 'standard' de Excel.

Je voulais obliger l'utilisateur pour sauvegarder à cliquer sur mon bouton dans la feuille.

voila le code :

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Cancel = True
MsgBox 'Veuillez sauvegarder avec le bouton dans la Feuille AGE-NF' & vbCrLf & 'pour eviter de perdre vos données', vbCritical + vbOKOnly, 'Non ...'
End Sub

++

Creepy
 

Creepy

XLDnaute Accro
Re:interdire la sauvegarde d'un fichier si...

Hello,

Pour mon code, tu passe en mode Editeur VBA et tu vas sur la macro. Tu mets un ' devant cancel=true(annulation de la sauvegarde).

Tu fais F8

Tu arrive à la ligne d'après
Tu enleves l'apostrophe et F8 encore

Tu auras le message mais la sauvegarde sera faites puisque l'instruction d'annulation etait avant

Voila

++

Creepy
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Re:interdire la sauvegarde d'un fichier si...

Bonjour Wachoo31, re Creepy, Romual, le Forum

Et ben toujours aussi expéditif Creepy, bien sûr qu'on peut faire ceci, mais tant qu'à faire alors le faire proprement, sans aller mettre en commentaires des instructions VBA à chaque fois...

Une approche basée sur l'Application UserName (à paramétrer dans Excel / Outils / Options / Onglet 'Général')

Option Explicit

Private VariableBooleanSave As Boolean

Private Sub Workbook_Open()
Dim Question As Byte
Dim Code As String
VariableBooleanSave =
True
   
If Application.UserName = 'Thierry' Then
    Question = MsgBox('Bonjour Thierry, voulez vous pouvoir sauver ce classeur ?', vbQuestion + vbYesNo)
       
If Question = vbYes Then
        Code = Application.InputBox('Indiquer votre Code Pin à 4 Chiffres', Type:=1)
           
If Code = '1234' Then
            VariableBooleanSave =
False
           
End If
       
End If
   
End If
End Sub


Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
   
If VariableBooleanSave = True Then
        Cancel = VariableBooleanSave
        MsgBox 'Vous n
'êtes pas logé en administrateur', vbCritical, 'Non Sauvé...'
   
Else
        MsgBox 'Fichier Sauvé', vbInformation, 'Sauvé'
   
End If
End Sub


Ici j'ai mis en Open, mais on pourrait le mettre dans le BeforeSave tout aussi bien... Mais disons que ce serait rageant 'Après' les modifs...

Bonne Soirée
@+Thierry
 

Zon

XLDnaute Impliqué
Re:interdire la sauvegarde d'un fichier si...

Salut,

Désolé d'ntervenir, mais dis moi Thierry question naïve de ma part comment fait tu pour insérer le code dans un post ? J'ai beau selectionner mon texte puis cliquer sur code rien à faire je perds ma mis en page VBA ?

Merci

A+++
 

wachoo31

XLDnaute Occasionnel
Re:interdire la sauvegarde d'un fichier si...

bonjour _Thierry , Zon, Creepy, Romual, le forum

-Thierry, comme toujours une solution d'un expert qui me ravi au plus au degré, je met cela en pratique de suite

bonne journée a vous tous et longue vie a ce forum vraiment génial
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Re:interdire la sauvegarde d'un fichier si...

Bonjour Wachoo31, Zon, Creepy, Romual, le Forum

De rien Wachoo !

Zon, tu es toujours bienvenu dans mes Fils !!! Pour la mise en forme, j'utilise la XLA de Sylvain qu'il a su bien adapter pour ce nouveau Forum dans ce Fil Lien supprimé

Merci Sylvain !

Bonne Journée
@+Thierry
 

wachoo31

XLDnaute Occasionnel
Re:interdire la sauvegarde d'un fichier si...

Re bonjour _Thierry, Zon, Creepy, Romual, le Forum

Si ce n'est pas trop demandé, je me tourne encore une fois vers toi thierry,ou un autre....

Comment pui-je interdire également l'exécution des macros par le bouton macro de la barre des menus.
 

Eric C

XLDnaute Barbatruc
Re:interdire la sauvegarde d'un fichier si...

Bonjour le forum
Bonour Wachoo31, Romuald, Thierry & Zon

Ceci pour inhiber l'utilisation de Macro. Dans mon exemple, Outils est en 6 ème horizontale de ma barre d'outils et en 11ème position en descendant.

Code:
Sub InhibeOutilsMacro()
CommandBars(1).Controls(6).Controls(11).Enabled = False
End Sub
;)
 

Discussions similaires

Statistiques des forums

Discussions
312 980
Messages
2 094 130
Membres
105 941
dernier inscrit
antho_qh