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

Interdire la sauvegarde d'Excel ... Possible ?

7 réponses
Avatar
BlackStorm
Bonsoir à tous,

J'avais dans un file précédent demandais comment faire une listage de
documents dans un répertoire spécifique. Je remercie une fois encore
MichDenis et Michel Pierron.

L'appli me rapatrie via une routine et un bouton de commande en feuil1
la liste des fichiers contenu dans un répertoire donné sur une
feuil2(normal). Or quand mes collègues quittent Excel, ils font une
sauvegarde ce qui génére à l'ouverture suivante de la meme feuille, une
feuil3, feuil4.
En fait je voudrais que ce fichier ne PUISSE pas faire de sauvergarde et
que lorsque l'on ferme Excel il ne pose pas la question sauvergader ou
mieux qu'il interdise cette sauvergarde. Histoire d'avoir une feuil2
vierge à chaque ouverture.

Je ne sais pas si je suis bien clair ?!?

Merci d'avance pour votre aide à tous !

7 réponses

Avatar
isabelle
bonjour BlackStorm,

c'est possible en vérifiant une condition,

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If Application.UserName = "zaza" Then Cancel = True
End Sub

la vérification d'une condition = vrai est primordial
si tu veut que la macro s'enregistre au moin une fois avec le classeur.
j'ai utilisé Application.UserName mais tu peut utiliser autre chose qui est unique à ton poste.

isabelle

Bonsoir à tous,

J'avais dans un file précédent demandais comment faire une listage de
documents dans un répertoire spécifique. Je remercie une fois encore
MichDenis et Michel Pierron.

L'appli me rapatrie via une routine et un bouton de commande en feuil1
la liste des fichiers contenu dans un répertoire donné sur une
feuil2(normal). Or quand mes collègues quittent Excel, ils font une
sauvegarde ce qui génére à l'ouverture suivante de la meme feuille, une
feuil3, feuil4.
En fait je voudrais que ce fichier ne PUISSE pas faire de sauvergarde et
que lorsque l'on ferme Excel il ne pose pas la question sauvergader ou
mieux qu'il interdise cette sauvergarde. Histoire d'avoir une feuil2
vierge à chaque ouverture.

Je ne sais pas si je suis bien clair ?!?

Merci d'avance pour votre aide à tous !


Avatar
Vpco
Salut BlackStorm,

1 - Copie ceci dans ThisWorkbook

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
Boolean)
Cancel = False
End Sub

2 - Ferme ton fichier
3 - Règle ton niveau de sécurité macros sur "moyen" puis tu démarre ton
fichier en désactivant les macros.

4 - Vas dans Thisworkbook dans le code que tu as copié et tu modifie la
ligne Cancel = False ainsi
Cancel = True

5 - Pour finir tu sauvegardes. Au prochain démarrage si tu actives les
macros la sauvegarde sera impossible.

Cordialement.

Marc
Avatar
Vpco
Re,

Oups j'avais pas vu la réponse d'Isabelle... :-(

Désolé Isabelle.

Ceci étant les deux soluces utilise la même méthode.

Sinon dans le même genre voici ce que Jean-Francois Aubert avait publié sur
ce NG il ya quelque temps et que j'utilise de temps en temps:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
Boolean)
Dim rep
rep = InputBox("Saisir le M de P", "Seulement le chef peut sauvegarder!")
If rep <> "MonMotDePasse" Then
Cancel = True
Else
Cancel = False
End If
End Sub

Pour chaque sauvegarde tu passes par une Input box qui te demande le
password, dans cette exemple 3ème ligne du code
"MonMotDePasse".

Pour que cela soit un poil efficace il est préférable que ton projet VBA
soit protégé ( bien que toute protection sur excel ne soient pas
inviolable...)

Cordialement.

Marc
Avatar
lSteph
Bonjour,
en complément
pour rendre possible la sauvegarde impossible

application.enableeventsúlse
Workbooks("machin.xls").save


Cdlt.

lSteph


BlackStorm a formulé ce mercredi :
Bonsoir à tous,

J'avais dans un file précédent demandais comment faire une listage de
documents dans un répertoire spécifique. Je remercie une fois encore
MichDenis et Michel Pierron.

L'appli me rapatrie via une routine et un bouton de commande en feuil1 la
liste des fichiers contenu dans un répertoire donné sur une feuil2(normal).
Or quand mes collègues quittent Excel, ils font une sauvegarde ce qui génére
à l'ouverture suivante de la meme feuille, une feuil3, feuil4.
En fait je voudrais que ce fichier ne PUISSE pas faire de sauvergarde et que
lorsque l'on ferme Excel il ne pose pas la question sauvergader ou mieux
qu'il interdise cette sauvergarde. Histoire d'avoir une feuil2 vierge à
chaque ouverture.

Je ne sais pas si je suis bien clair ?!?

Merci d'avance pour votre aide à tous !


--
- -

Avatar
Vpco
Salut Stéphane,

Toujours sur la brêche?.... ;-))

Ha la la qu'est ce qu'on deviendrait nous petits EXCELIENS de "base" sans
vous les piliers !

Amicalement.

Marc
Avatar
lSteph
Bonjour Marc,

Nonon...en chaussure seulement le 47,
pour excel bien plus petit que ce qui peut se faire sur ce forum.
(cela fait moins de deux mois que ce sujet est passé et j'avais
également
compliqué un peu la façon d'enregistrer, pourtant, si simple lorsque
suggèrée)

Cela dit s'agissant d'empêcher un grand chef de mettre la pagaille
dans un fichier,
même pas plus besoin de mot de passe comme ça suffit d'avoir cette
petite sub en private module. Cela sera certainement très efficace car
lui n'a jamais à se creuser la tête pour trouver une macro, donc il
ne saura pas comment faire et se gardera bien d'informer un subalterne
que quand lui essaie d'enregistrer ce fichier il n'y arrive pas.

@+

Cdlt.

lSteph


Salut Stéphane,

Toujours sur la brêche?.... ;-))

Ha la la qu'est ce qu'on deviendrait nous petits EXCELIENS de "base" sans
vous les piliers !

Amicalement.

Marc


Avatar
BlackStorm
Un GRAND MERCI A VOUS !!!


Je vais essayer tout cela dès demain au boulot !

Bonne soirée :)