Note: The other languages of the website are Google-translated. Back to English

Comment désactiver ou ne pas autoriser les options Enregistrer et enregistrer sous dans Excel?

Normalement, lorsque nous cliquons sur la fonction Enregistrer ou Enregistrer sous, nos données modifiées dans le classeur seront enregistrées immédiatement. Mais, parfois, votre fichier Excel n'est pas autorisé à être modifié et enregistré par d'autres utilisateurs lorsqu'ils lisent le fichier. Cet article fournit la méthode VBA pour désactiver les options Enregistrer et enregistrer sous dans Excel.

Désactiver les options Enregistrer et enregistrer sous avec le code VBA


Désactiver les options Enregistrer et enregistrer sous avec le code VBA

Vous pouvez exécuter le code VBA ci-dessous pour désactiver les options Enregistrer et enregistrer sous dans Excel.

1. Dans le classeur, vous devez désactiver les fonctions Enregistrer et enregistrer sous, veuillez appuyer sur autre + F11 touches simultanément pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

2. dans le Microsoft Visual Basic pour applications fenêtre, double-cliquez Ce classeur dans la barre de gauche, copiez et collez le VBA 1 ci-dessous dans la fenêtre Code, puis cliquez sur le bouton Enregistrer bouton. Voir la capture d'écran:

VBA 1: désactivez les options Enregistrer et enregistrer sous dans Excel

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    ThisWorkbook.Saved = True
End Sub

3. Dans l'ouverture Enregistrer sous fenêtre, sélectionnez un dossier pour enregistrer le classeur, nommez le classeur selon vos besoins et sélectionnez Cahier de travail Excel avec macro-activé du Enregistrer en tant que type de liste déroulante, et enfin cliquez sur le Enregistrer .

4. Maintenant, copiez et collez le VBA 2 ci-dessous dans le Ce classeur fenêtre de code. Voir la capture d'écran.

VBA 2: désactivez les options Enregistrer et enregistrer sous dans Excel

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim xName As String
xName = "CancelBeforeSave"

If Not Evaluate("=ISREF('" & xName & "'!A1)") Then
    Sheets.Add(after:=Worksheets(Worksheets.count)).Name = xName & ""
    Sheets(xName & "").Move after:=Worksheets(Worksheets.count)
    Sheets(xName & "").Visible = False
    Exit Sub
End If
    Cancel = True
End Sub

5. Cliquez sur l' Enregistrer pour enregistrer le code, puis fermez le classeur.

Le classeur a été enregistré en tant que classeur Excel prenant en charge les macros avec le Enregistrer et Enregistrer sous fonctions désactivées.

Notes: Il semble que les modifications soient enregistrées dans la feuille de calcul actuelle chaque fois que vous modifiez et enregistrez le classeur. Mais après avoir fermé et rouvert le classeur, vous constaterez que les modifications n'ont pas pu être enregistrées.


Les meilleurs outils de productivité de bureau

Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe; Créer une liste de diffusion et envoyer des e-mails ...
  • Barre Super Formula (modifiez facilement plusieurs lignes de texte et de formule); Disposition de lecture (lire et modifier facilement un grand nombre de cellules); Coller dans la plage filtrée...
  • Fusionner les cellules / lignes / colonnes sans perdre de données; Contenu des cellules divisées; Combiner des lignes / colonnes en double... Empêcher les cellules en double; Comparer les gammes...
  • Sélectionnez Dupliquer ou Unique Lignes; Sélectionnez les lignes vides (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux classeurs; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de formule; Créer automatiquement des références à plusieurs feuilles; Insérer des puces, Cases à cocher et plus encore ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre le contenu et les commentaires des cellules...
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial par gras, italique ...
  • Combiner des classeurs et des feuilles de travail; Fusionner les tableaux en fonction des colonnes clés; Diviser les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDF...
  • Plus de 300 fonctionnalités puissantes. Prend en charge Office / Excel 2007-2019 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Essai gratuit de 30 jours. Garantie de remboursement de 60 jours.
onglet kte 201905

Office Tab apporte une interface à onglets à Office et simplifie considérablement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!
bas de cabine
Commentaires (18)
Pas encore de notes. Soyez le premier à évaluer!
Ce commentaire a été minimisé par le modérateur sur le site
cela ne fonctionne pas. Je ne peux pas enregistrer le code, il a disparu une fois que j'ai rouvert le fichier. Comment enregistrer le code ?
Ce commentaire a été minimisé par le modérateur sur le site
Cher té,
Merci pour votre question. L'article est mis à jour pour prendre en charge l'enregistrement du code dans le classeur maintenant.
Ce commentaire a été minimisé par le modérateur sur le site
cher
l'article n'est pas mis à jour. ça ne marche pas
Ce commentaire a été minimisé par le modérateur sur le site
Salut jen,
L'article a été mis à jour à nouveau avec la résolution de problèmes. Veuillez essayer. Merci pour votre commentaire.
Ce commentaire a été minimisé par le modérateur sur le site
La mise à jour du code ajoute une feuille, mais ne vérifie jamais réellement s'il y a une valeur TRUE/FALSE dans cette feuille. La mise à jour ne corrige rien, elle crée simplement une feuille inutile dans le classeur.

Je pense que vous avez oublié de vérifier s'il y a une valeur VRAI/FAUX sur cette feuille.
Ce commentaire a été minimisé par le modérateur sur le site
Comme TEE l'a posté, comment enregistrons-nous le fichier avec la macro ? Il n'y est pas quand je rouvre. Je reçois également un bogue sur le bit ThisWorkbookSaved = True.
Ce commentaire a été minimisé par le modérateur sur le site
Cher Les,
Merci pour votre question. L'article est mis à jour pour prendre en charge l'enregistrement du code dans le classeur maintenant.
Ce commentaire a été minimisé par le modérateur sur le site
Comme TEE et LES l'ont posté, comment enregistrons-nous le fichier avec la macro ?
Ce commentaire a été minimisé par le modérateur sur le site
Hi,
Merci pour votre question. L'article est mis à jour pour prendre en charge l'enregistrement du code dans le classeur maintenant.
Ce commentaire a été minimisé par le modérateur sur le site
Juste pour aider quiconque lit cet article à la recherche d'aide pour supprimer le bouton de sauvegarde, j'ai pensé placer la réponse ici car "Crystal" ne semble pas répondre à la question ....


Si vous placez le classeur en "mode conception", puis cliquez sur ENREGISTRER, cela devrait fonctionner.
Ce commentaire a été minimisé par le modérateur sur le site
Cher Rogue,
Je passe à côté du point du problème. Merci beaucoup pour votre aide et partage.

Best Regards
Ce commentaire a été minimisé par le modérateur sur le site
Je continue à recevoir une erreur de débogage
Ce commentaire a été minimisé par le modérateur sur le site
Bonne journée,
Quelle version d'Excel utilisez-vous ?
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour, je suis un fan de ce site... J'avais l'habitude d'essayer le code. Cela fonctionne parfaitement. Mais cela désactive également "l'option Enregistrer". Je n'arrive pas à enregistrer la feuille Excel. Ce dont j'ai besoin, c'est de désactiver uniquement la fonction "Enregistrer sous", j'ai également lu les commentaires des autres utilisateurs. ThisWorkbookSaved = True ne fonctionne pas non plus pour moi. S'il te plait peux-tu aider? Merci beaucoup pour toutes vos contributions.
Ce commentaire a été minimisé par le modérateur sur le site
S'il vous plaît, je ne veux pas que quelqu'un copie ou enregistre mon fichier Excel, comment puis-je supprimer enregistrer ou enregistrer sous ?
Ce commentaire a été minimisé par le modérateur sur le site
J'ai essayé d'utiliser le code pour NE PAS ENREGISTRER le fichier. Mais cela n'a pas fonctionné. Il enregistre le fichier.
Ce commentaire a été minimisé par le modérateur sur le site
Merci pour votre réponse. Grandement apprécié. Je veux que vous me guidiez sur la façon d'envoyer un fichier enregistré à un ami qui peut ouvrir mon fichier mais seulement le lire ou le modifier, mais ne peut pas enregistrer le fichier dans n'importe quel dossier.
1. Par exemple, j'ai un fichier enregistré, que je veux envoyer à "A". Il ouvre le fichier enregistré mais après l'avoir ouvert, il lit ou apporte des modifications à mon fichier, il ne peut pas l'enregistrer de son côté dans aucun dossier.
2. J'ai un formulaire de code Internet qui interdit l'enregistrement. Mais dans ce cas, lorsque je copie et colle le code, le fichier ne s'enregistre pas. Je ne peux donc pas lui envoyer le fichier
3. Comment puis-je envoyer le fichier à la partie "A" avec un code enregistré dans l'espoir qu'il ne puisse pas enregistrer le fichier.
Ce commentaire a été minimisé par le modérateur sur le site
Brillant !   
Il n'y a pas encore de commentaires postés ici
Laisser vos commentaires
Publier en tant qu'invité
×
Évaluez cet article:
0  Personnages
Emplacements suggérés