Bloquer l'enregistrement d'un fichier xls

Messages postés
4
Date d'inscription
jeudi 8 août 2002
Statut
Membre
Dernière intervention
9 août 2002
-
Messages postés
4
Date d'inscription
jeudi 8 août 2002
Statut
Membre
Dernière intervention
9 août 2002
-
Bonjour,

voici ma question:

A l'ouverture de mon fichier excel, je souhaiterai que celui ci soit bloquer en enregistrement, que l'utilisateur ne puisse pas l'enregistrer en cliquant sur la petite icone 'enregistrer'.

Par contre, ce fichier excel qui est un formulaire doit etre enregistrer une fois que l'utilisateur a rempli tous les champs. c'est la condition.

si tous les champs ne sont pas remplis
-- pas d'enregistrement possible (msg erreur)
sinon enregistrement

voici l'algo.

J'espere que vous aller allumer ma lanterne.

Merci

6 réponses

Messages postés
73
Date d'inscription
mardi 23 juillet 2002
Statut
Membre
Dernière intervention
10 juillet 2003

je n'ai pas très bien compris.

tu dis que ton fichier excel est formulaire.
Dans ce cas, les icones de la barre des taches ne sont pas accessibles donc tu ne peux enregistrer.
Messages postés
4
Date d'inscription
jeudi 8 août 2002
Statut
Membre
Dernière intervention
9 août 2002

oui en fait je me suis mal exprimé car on doit pas avoir la meme notion de formulaire.
ce n'en est pas vraiment un...

il y a des cases ou l'utilisateur devra mettre une reponse. Si toutes les cases ou l'utilisateur doit repondre ne sont pas remplis, je veux que le fichier ne puisse s'enregistrer.
Messages postés
73
Date d'inscription
mardi 23 juillet 2002
Statut
Membre
Dernière intervention
10 juillet 2003

Une réponse à la va vite

tu mets dans ThisWorkbook

Private Sub Workbook_Open()
'cache la barre des menus
Application.CommandBars(1).Enabled = False
'cache la barre d'outils
Application.CommandBars(3).Enabled = False
End Sub

Tu crée dans sur ta feuille un bouton
puis dans le code tu mets
Private Sub CommandButton1_Click()

'test sur tes cellules
If Range("A1") = "" Then
MsgBox "Erreur"
Exit Sub
End If

'affiche les barres d'outils
Application.CommandBars(1).Enabled = True
Application.CommandBars(3).Enabled = True
End Sub

Attention cela ne bloque pas le raccourci "ctrl+s"

sinon tu peux aller voir sur:
http://disciplus.simplex.free.fr/
Messages postés
4
Date d'inscription
jeudi 8 août 2002
Statut
Membre
Dernière intervention
9 août 2002

merci énormément cette aide m'est tres precieuse !

j'en suis tres reconnaissant . A bientot
Messages postés
110
Date d'inscription
jeudi 9 mai 2002
Statut
Membre
Dernière intervention
11 mars 2010
1
encore plus simple!!!

tu te déclare 1 objet excel du type withevent

public withevents monexcel as excel.application

!!! N'oubliez pas d'ajouter la référence a excel dans votre projet!!!

ainsi... dans ton objet monexcel, tu tombe avec l'événements WorkBookbeforesave

ainsi... tu n'as qua vérifier que tes champs son remplis sinon... ne placant cancel a true... la sauvegarde n'a pas lieu!!!
Messages postés
4
Date d'inscription
jeudi 8 août 2002
Statut
Membre
Dernière intervention
9 août 2002

il est vrai que ta solution est également interessante, je v tenter de l'integrer !

merci !!!!