| |
Consulter les messages sans réponse | Consulter les sujets actifs
|
Page 1 sur 1
|
[ 13 message(s) ] |
|
| Auteur |
Message |
|
Lu42
|
Publié: 03 Août 2006, 11:31 |
|
 |
| Régulier |
 |
Inscription : 12 Mai 2002, 12:49 Message(s) : 410
|
|
Dans un classeur excel est-il possible de désactiver l'enregistrement d'un document, car je ne veux pas que les utilisateurs enregistre le fichier excel sur le bureau ou ailleurs sur leur ordi, car j'ai un numéro séquentiel qui change à chaque ouverture, et qui doit être différent, dons il ne faut pas que tous et chacun enregistre le fichier sur leur ordi.
Le fichier Excel est accessible sur un serveur et sert de modèle.
merci
_________________ Carte ASRock 270 Pro4, CPU Intel I7 6700, 3.4Ghz, 32 Go de Ram, Windows 10 Pro (64 bits) sur SSD M2 500Go + 1DD SSD M2 de 500 Go et 2 DD de 2To + 1 DD de 1To, Carte graphique Intégré Intel et carte graphie Geforce, 3 moniteurs.
|
|
| Haut |
|
 |
|
Pile
|
Publié: 03 Août 2006, 11:42 |
|
 |
| A réponse à tout! |
 |
Inscription : 07 Jan 2002, 09:21 Message(s) : 3535 Localisation : Québec
|
Mettez un mot de passe aux fichiers concernés que vous pourrez attribuer à ceux que vous voudrez.
Salut 
_________________ "Alea jacta est [ENTER]"  Pile
|
|
| Haut |
|
 |
|
Lu42
|
Publié: 03 Août 2006, 12:46 |
|
 |
| Régulier |
 |
Inscription : 12 Mai 2002, 12:49 Message(s) : 410
|
|
Merci,
Pas tout à fait, un mot de passe c'est pour empêcher d'ouvrir le fichier, moi je veux qu'il soit accessible à tout le monde, sauf qu'une fois qu'il ont complété le formulaire, qu'il ne puisse pas le sauvegarder, il imprime ensuite il ferme sans sauvegarde.
_________________ Carte ASRock 270 Pro4, CPU Intel I7 6700, 3.4Ghz, 32 Go de Ram, Windows 10 Pro (64 bits) sur SSD M2 500Go + 1DD SSD M2 de 500 Go et 2 DD de 2To + 1 DD de 1To, Carte graphique Intégré Intel et carte graphie Geforce, 3 moniteurs.
|
|
| Haut |
|
 |
|
monsieurpatate
|
Publié: 03 Août 2006, 13:25 |
|
Inscription : 03 Août 2005, 20:14 Message(s) : 22
|
|
Est-ce que vous voulez empêcher vos utilisateurs de garder une copie de votre formulaire sous forme électronique ou est-ce que vous voulez que le formulaire reste intact?. Dans ce dernier cas, vous pouvez simplement utiliser un modèle.
|
|
| Haut |
|
 |
|
Lu42
|
Publié: 03 Août 2006, 13:54 |
|
 |
| Régulier |
 |
Inscription : 12 Mai 2002, 12:49 Message(s) : 410
|
|
Cela ne me donne absolument rien en enregistrant commme modèle.
La situation: J'ai un formulaire avec un numéro de formulaire séquentiel(comme un numéro de facture qui est différent à chaque facture) qui augmente de 1 à chaque ouverture, donc, s'il a 100 formulaires d'imprimer ils ont tous un numéro différent.
Ce que je veux pas: Je ne veux pas que tous et chacun, après avoir ouvert le formulaire à partir du serveur, puisse enregistrer le formulaire sur leur poste de travail, ce qui ferais que: si il y a 50 utilisateurs qui ont enregistré le formulaire sur le poste de travail, on va se retrouver avec 50 formulaires avec les même numéro, ce que je veux pas.
merci
_________________ Carte ASRock 270 Pro4, CPU Intel I7 6700, 3.4Ghz, 32 Go de Ram, Windows 10 Pro (64 bits) sur SSD M2 500Go + 1DD SSD M2 de 500 Go et 2 DD de 2To + 1 DD de 1To, Carte graphique Intégré Intel et carte graphie Geforce, 3 moniteurs.
|
|
| Haut |
|
 |
|
TyL
|
Publié: 03 Août 2006, 14:17 |
|
Inscription : 26 Mars 2002, 10:51 Message(s) : 2546 Localisation : Ottawa, ON
|
|
Je dis ca comme ca... je sais pas si c'est possible mais est-ce que tu pourrais pas donner uniquement les droits de lectures sur ton fichier sur le serveur ? Je m'avance en disant sa tout en spécifiant que je ne sais pas si cela pourrais régler le problème.
Edit: dans la sécurité tu metterais seulement le droit en Read and Execute
_________________ Développeur Web Senior, CEPEO, Ottawa, ON
Dernière édition par TyL le 03 Août 2006, 14:18, édité 1 fois.
|
|
| Haut |
|
 |
|
Pierre Charbonneau
|
Publié: 03 Août 2006, 14:18 |
|
Inscription : 06 Jan 2002, 23:03 Message(s) : 1894 Localisation : Québec
|
|
| Haut |
|
 |
|
monsieurpatate
|
Publié: 03 Août 2006, 15:21 |
|
Inscription : 03 Août 2005, 20:14 Message(s) : 22
|
|
Ou encore, si tu fais le contraire, c-a-d forcer l'enregistrement, tu pourrais faire incrémenter un compteur à chaque impression à l'aide d'un bouton pour l'impression:
Private Sub CommandButton1_Click()
nbrCopie = InputBox("Nbr de copies pour impression?")
For i = 1 To nbrCopie
ActiveSheet.PrintOut
Range("a1").Value = Range("A1").Value + 1
Next
End Sub
|
|
| Haut |
|
 |
|
Procyon
|
Publié: 03 Août 2006, 22:57 |
|
Inscription : 07 Jan 2002, 15:10 Message(s) : 3551 Localisation : Beauport, Québec
|
ALT-F11, dans l'objet "ThisWorkbook" rajoutez le code suivant:
Code : Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) Cancel = True End Sub
Il ne reste qu'à trouver une façon d'empêcher les gens de modifier les macros.
EDIT: J'y pense, ce code là va emêcher l'enregistrement du fichier, vous ne pourrez donc pas enregistrer votre fichier contenant ce code. Il faudrait une condition que vous seul savez outrepasser.
_________________ Procyon,
Modérateur de la section Trouvailles
|
|
| Haut |
|
 |
|
Procyon
|
Publié: 03 Août 2006, 23:13 |
|
Inscription : 07 Jan 2002, 15:10 Message(s) : 3551 Localisation : Beauport, Québec
|
Bon, finalement je proposerais ceci, toujours dans le module ThisWorkbook:
Code : Private bIsClosing As Boolean
Private Sub Workbook_BeforeClose(Cancel As Boolean) bIsClosing = True If Not ThisWorkbook.Saved Then ThisWorkbook.Save End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) If Not bIsClosing Then Cancel = True End If End Sub
Ce que ça fait, c'est que ça empêche d'enregistrer le fichier par CTRL-S ou par le menu, ça empêche autant "Save" que le "Save As".
À la fermeture du fichier, si l'usager a modifié le fichier, celui-ci s'enregistre automatiquement sans demander de confirmation. Si aucune modification n'a été faite, rien ne se passera.
_________________ Procyon,
Modérateur de la section Trouvailles
|
|
| Haut |
|
 |
|
Lu42
|
Publié: 04 Août 2006, 15:26 |
|
 |
| Régulier |
 |
Inscription : 12 Mai 2002, 12:49 Message(s) : 410
|
Procyon a écrit: Bon, finalement je proposerais ceci, toujours dans le module ThisWorkbook: Code : Private bIsClosing As Boolean
Private Sub Workbook_BeforeClose(Cancel As Boolean) bIsClosing = True If Not ThisWorkbook.Saved Then ThisWorkbook.Save End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) If Not bIsClosing Then Cancel = True End If End Sub
Ce que ça fait, c'est que ça empêche d'enregistrer le fichier par CTRL-S ou par le menu, ça empêche autant "Save" que le "Save As". À la fermeture du fichier, si l'usager a modifié le fichier, celui-ci s'enregistre automatiquement sans demander de confirmation. Si aucune modification n'a été faite, rien ne se passera.
Sa marche bien, aucune modification possible, sauf que mon numéro séquentiel, change à l'ouverture pour qu'on soit en mesure d'ouvrir plusieurs feuilles à la fois à partir de différent point avec un numéro différent sur chaque feuille, voici le code
Private Sub Workbook_Open()
Range("AC4990").Value = Range("AC4990").Value + 1
Range("N5").Value = "W-" & Range("AC4990").Value
ActiveWorkbook.Save
J'ai regardé dans la page d'astuce que "Pierre Charbonneau" ma suggéré et je n'ai rien trouvé non plus, mais j'ai bien aimé cette page,
Merci
_________________ Carte ASRock 270 Pro4, CPU Intel I7 6700, 3.4Ghz, 32 Go de Ram, Windows 10 Pro (64 bits) sur SSD M2 500Go + 1DD SSD M2 de 500 Go et 2 DD de 2To + 1 DD de 1To, Carte graphique Intégré Intel et carte graphie Geforce, 3 moniteurs.
|
|
| Haut |
|
 |
|
Bidor
|
Publié: 04 Août 2006, 16:31 |
|
 |
| Occasionnel |
 |
Inscription : 05 Août 2002, 16:19 Message(s) : 112
|
TyL a écrit: Je dis ca comme ca... je sais pas si c'est possible mais est-ce que tu pourrais pas donner uniquement les droits de lectures sur ton fichier sur le serveur ? Je m'avance en disant sa tout en spécifiant que je ne sais pas si cela pourrais régler le problème.
Edit: dans la sécurité tu metterais seulement le droit en Read and Execute
Moi je suis d'accord avec ça...
Dans le répertoire, tu permets seulement lecture et execute...
|
|
| Haut |
|
 |
|
Procyon
|
Publié: 05 Août 2006, 01:15 |
|
Inscription : 07 Jan 2002, 15:10 Message(s) : 3551 Localisation : Beauport, Québec
|
Ceci peut-être?
Il faut se mettre des breakpoints et passer par dessus du code pour pouvoir enregistrer le fichier quand on veut enregistrer ce code. Si tu as besoin de plus d'aide, tu n'as qu'à me le dire.
Code : Private bAllowSave As Boolean
Private Sub Workbook_BeforeClose(Cancel As Boolean) ThisWorkbook.Saved = True 'Pour éviter de se faire poser la question si on veut enregistrer les modifications. End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) If Not bAllowSave Then Cancel = True End If End Sub
Private Sub Workbook_Open() Range("AC4990").Value = Range("AC4990").Value + 1 Range("N5").Value = "W-" & Range("AC4990").Value bAllowSave = True ActiveWorkbook.Save bAllowSave = False End Sub
_________________ Procyon,
Modérateur de la section Trouvailles
|
|
| Haut |
|
 |
|
Page 1 sur 1
|
[ 13 message(s) ] |
|
Qui est en ligne ? |
Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 1 invité |
|
Vous ne pouvez pas publier de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum
|
|
|
|