Je ne répondais qu'à la problématique du demandeur
quant à la sauvegarde de la procédure qu'on lui avait
suggérée.
Si cette approche lui convient, il est possible de faire
disparaître la procédure du ThisWorkbook dès que le
fichier modèle s'ouvre la première fois pour engendrer
un fichier "fils".
Je compte sur toi pour lui suggérer comment faire !
;-)
"LSteph" a écrit dans le message de groupe de disc ussion :
;-) bon bon je m'incline sur ce point que vous dites fort bien mieux
mais me semble primordial (avec explicitations plus nourries)
de souligner les deux autres points bien plus épineux:
1- si on enregistre un modèle
qui ne doit pas changer, ce même modèle va générer un fichier qui
comprendra aussi cette empêchement d'enregistrer sous
Est-ce bien ce que l'on veut?
2-Connaissant le simple fait> "soit tout simplement désactiver les macr os",
c'est aussi ce que peut faire l'utilisateur.
Est-ce bien ce que l'on veut?
Non est culpa, ti absolvo (qui dirait)
:o)
--
lSteph
On 7 oct, 14:30, "michdenis" wrote:
> Votre honneur,
> Je ne suis coupable de rien, je n'ai rien demandé...
> à l'égard de la proposition que j'ai faite, la mienne est supérie ur !
> car plus compréhensible que la tienne !!! Lorsque tu écris :
> "soit tout simplement désactiver les macros", toi, tu sais de
> quoi tu parles mais ce n'est pas nécessairement évident pour
> celui qui n'a pas tes compétences en Excel.
> Vous comprendrez votre honneur que ce n'est pas parce que l'on
> est traduit devant les tribunaux que l'on connaît nécessairement le jargon juridique!
> ;-)
> "LSteph" a écrit dans le message de groupe de di scussion :
>
> C'est bien ce que je disais si tu relis ce n'est pas cela le pire!
> ;o))
> On 7 oct, 12:37, "michdenis" wrote:
> > Bonjour Patrick,
> > Si tu ouvres ton fichier sans activer les macros, cela ne t'empêche pas
> > d'y inscrire ta macro et d'enregistrer ton fichier... non ?
> > "Patrick24" a écrit dans le message de groupe de discussion :
> > #
> > Bonjour,
> > J'aimerai empêcher l'enregistrement de mon modèle
> > J'ai essayé :
> > Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
> > Boolean)
> > ' empêche d'enregistrer-sous
> > If SaveAsUI = True Then Cancel = True ' fonctionne très b ien
> > ' et j'ai essayé :
> > Cancel = True
> > ' la effectivement je ne peux plus enregistrer et enregistrer-sous ma is le
> > problème c'est que je ne peux même pas enregistrer la macro pour la
> > sauvegarder !
> > End Sub
> > Comment je dois faire ?
> > Merci de votre aide.
> > Patrick24- Masquer le texte des messages précédents -
> - Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Je ne répondais qu'à la problématique du demandeur
quant à la sauvegarde de la procédure qu'on lui avait
suggérée.
Si cette approche lui convient, il est possible de faire
disparaître la procédure du ThisWorkbook dès que le
fichier modèle s'ouvre la première fois pour engendrer
un fichier "fils".
Je compte sur toi pour lui suggérer comment faire !
;-)
"LSteph" <gmlst...@gmail.com> a écrit dans le message de groupe de disc ussion :
4c2cafcc-981d-435b-991c-4879ef13a...@d23g2000vbm.googlegroups.com...
;-) bon bon je m'incline sur ce point que vous dites fort bien mieux
mais me semble primordial (avec explicitations plus nourries)
de souligner les deux autres points bien plus épineux:
1- si on enregistre un modèle
qui ne doit pas changer, ce même modèle va générer un fichier qui
comprendra aussi cette empêchement d'enregistrer sous
Est-ce bien ce que l'on veut?
2-Connaissant le simple fait> "soit tout simplement désactiver les macr os",
c'est aussi ce que peut faire l'utilisateur.
Est-ce bien ce que l'on veut?
Non est culpa, ti absolvo (qui dirait)
:o)
--
lSteph
On 7 oct, 14:30, "michdenis" <michde...@hotmail.com> wrote:
> Votre honneur,
> Je ne suis coupable de rien, je n'ai rien demandé...
> à l'égard de la proposition que j'ai faite, la mienne est supérie ur !
> car plus compréhensible que la tienne !!! Lorsque tu écris :
> "soit tout simplement désactiver les macros", toi, tu sais de
> quoi tu parles mais ce n'est pas nécessairement évident pour
> celui qui n'a pas tes compétences en Excel.
> Vous comprendrez votre honneur que ce n'est pas parce que l'on
> est traduit devant les tribunaux que l'on connaît nécessairement le jargon juridique!
> ;-)
> "LSteph" <gmlst...@gmail.com> a écrit dans le message de groupe de di scussion :
> 83adae09-cb65-4c3f-89b8-da4ba296c...@m18g2000vbs.googlegroups.com...
> C'est bien ce que je disais si tu relis ce n'est pas cela le pire!
> ;o))
> On 7 oct, 12:37, "michdenis" <michde...@hotmail.com> wrote:
> > Bonjour Patrick,
> > Si tu ouvres ton fichier sans activer les macros, cela ne t'empêche pas
> > d'y inscrire ta macro et d'enregistrer ton fichier... non ?
> > "Patrick24" <no-s...@wanadoo.fr> a écrit dans le message de groupe de discussion :
> > #ppPIaxRKHA....@TK2MSFTNGP02.phx.gbl...
> > Bonjour,
> > J'aimerai empêcher l'enregistrement de mon modèle
> > J'ai essayé :
> > Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
> > Boolean)
> > ' empêche d'enregistrer-sous
> > If SaveAsUI = True Then Cancel = True ' fonctionne très b ien
> > ' et j'ai essayé :
> > Cancel = True
> > ' la effectivement je ne peux plus enregistrer et enregistrer-sous ma is le
> > problème c'est que je ne peux même pas enregistrer la macro pour la
> > sauvegarder !
> > End Sub
> > Comment je dois faire ?
> > Merci de votre aide.
> > Patrick24- Masquer le texte des messages précédents -
> - Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Je ne répondais qu'à la problématique du demandeur
quant à la sauvegarde de la procédure qu'on lui avait
suggérée.
Si cette approche lui convient, il est possible de faire
disparaître la procédure du ThisWorkbook dès que le
fichier modèle s'ouvre la première fois pour engendrer
un fichier "fils".
Je compte sur toi pour lui suggérer comment faire !
;-)
"LSteph" a écrit dans le message de groupe de disc ussion :
;-) bon bon je m'incline sur ce point que vous dites fort bien mieux
mais me semble primordial (avec explicitations plus nourries)
de souligner les deux autres points bien plus épineux:
1- si on enregistre un modèle
qui ne doit pas changer, ce même modèle va générer un fichier qui
comprendra aussi cette empêchement d'enregistrer sous
Est-ce bien ce que l'on veut?
2-Connaissant le simple fait> "soit tout simplement désactiver les macr os",
c'est aussi ce que peut faire l'utilisateur.
Est-ce bien ce que l'on veut?
Non est culpa, ti absolvo (qui dirait)
:o)
--
lSteph
On 7 oct, 14:30, "michdenis" wrote:
> Votre honneur,
> Je ne suis coupable de rien, je n'ai rien demandé...
> à l'égard de la proposition que j'ai faite, la mienne est supérie ur !
> car plus compréhensible que la tienne !!! Lorsque tu écris :
> "soit tout simplement désactiver les macros", toi, tu sais de
> quoi tu parles mais ce n'est pas nécessairement évident pour
> celui qui n'a pas tes compétences en Excel.
> Vous comprendrez votre honneur que ce n'est pas parce que l'on
> est traduit devant les tribunaux que l'on connaît nécessairement le jargon juridique!
> ;-)
> "LSteph" a écrit dans le message de groupe de di scussion :
>
> C'est bien ce que je disais si tu relis ce n'est pas cela le pire!
> ;o))
> On 7 oct, 12:37, "michdenis" wrote:
> > Bonjour Patrick,
> > Si tu ouvres ton fichier sans activer les macros, cela ne t'empêche pas
> > d'y inscrire ta macro et d'enregistrer ton fichier... non ?
> > "Patrick24" a écrit dans le message de groupe de discussion :
> > #
> > Bonjour,
> > J'aimerai empêcher l'enregistrement de mon modèle
> > J'ai essayé :
> > Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
> > Boolean)
> > ' empêche d'enregistrer-sous
> > If SaveAsUI = True Then Cancel = True ' fonctionne très b ien
> > ' et j'ai essayé :
> > Cancel = True
> > ' la effectivement je ne peux plus enregistrer et enregistrer-sous ma is le
> > problème c'est que je ne peux même pas enregistrer la macro pour la
> > sauvegarder !
> > End Sub
> > Comment je dois faire ?
> > Merci de votre aide.
> > Patrick24- Masquer le texte des messages précédents -
> - Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Je ne répondais qu'à la problématique du demandeur
quant à la sauvegarde de la procédure qu'on lui avait
suggérée.
Si cette approche lui convient, il est possible de faire
disparaître la procédure du ThisWorkbook dès que le
fichier modèle s'ouvre la première fois pour engendrer
un fichier "fils".
Je compte sur toi pour lui suggérer comment faire !
;-)
"LSteph" a écrit dans le message de groupe de discussion :
;-) bon bon je m'incline sur ce point que vous dites fort bien mieux
mais me semble primordial (avec explicitations plus nourries)
de souligner les deux autres points bien plus épineux:
1- si on enregistre un modèle
qui ne doit pas changer, ce même modèle va générer un fichier qui
comprendra aussi cette empêchement d'enregistrer sous
Est-ce bien ce que l'on veut?
2-Connaissant le simple fait> "soit tout simplement désactiver les macros",
c'est aussi ce que peut faire l'utilisateur.
Est-ce bien ce que l'on veut?
Non est culpa, ti absolvo (qui dirait)
:o)
--
lSteph
On 7 oct, 14:30, "michdenis" wrote:
> Votre honneur,
> Je ne suis coupable de rien, je n'ai rien demandé...
> à l'égard de la proposition que j'ai faite, la mienne est supérieur !
> car plus compréhensible que la tienne !!! Lorsque tu écris :
> "soit tout simplement désactiver les macros", toi, tu sais de
> quoi tu parles mais ce n'est pas nécessairement évident pour
> celui qui n'a pas tes compétences en Excel.
> Vous comprendrez votre honneur que ce n'est pas parce que l'on
> est traduit devant les tribunaux que l'on connaît nécessairement le jargon juridique!
> ;-)
> "LSteph" a écrit dans le message de groupe de discussion :
>
> C'est bien ce que je disais si tu relis ce n'est pas cela le pire!
> ;o))
> On 7 oct, 12:37, "michdenis" wrote:
> > Bonjour Patrick,
> > Si tu ouvres ton fichier sans activer les macros, cela ne t'empêche pas
> > d'y inscrire ta macro et d'enregistrer ton fichier... non ?
> > "Patrick24" a écrit dans le message de groupe de discussion :
> > #
> > Bonjour,
> > J'aimerai empêcher l'enregistrement de mon modèle
> > J'ai essayé :
> > Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
> > Boolean)
> > ' empêche d'enregistrer-sous
> > If SaveAsUI = True Then Cancel = True ' fonctionne très bien
> > ' et j'ai essayé :
> > Cancel = True
> > ' la effectivement je ne peux plus enregistrer et enregistrer-sous mais le
> > problème c'est que je ne peux même pas enregistrer la macro pour la
> > sauvegarder !
> > End Sub
> > Comment je dois faire ?
> > Merci de votre aide.
> > Patrick24- Masquer le texte des messages précédents -
> - Afficher le texte des messages précédents -- Masquer le texte des messages
> précédents -
- Afficher le texte des messages précédents -
Je ne répondais qu'à la problématique du demandeur
quant à la sauvegarde de la procédure qu'on lui avait
suggérée.
Si cette approche lui convient, il est possible de faire
disparaître la procédure du ThisWorkbook dès que le
fichier modèle s'ouvre la première fois pour engendrer
un fichier "fils".
Je compte sur toi pour lui suggérer comment faire !
;-)
"LSteph" <gmlst...@gmail.com> a écrit dans le message de groupe de discussion :
4c2cafcc-981d-435b-991c-4879ef13a...@d23g2000vbm.googlegroups.com...
;-) bon bon je m'incline sur ce point que vous dites fort bien mieux
mais me semble primordial (avec explicitations plus nourries)
de souligner les deux autres points bien plus épineux:
1- si on enregistre un modèle
qui ne doit pas changer, ce même modèle va générer un fichier qui
comprendra aussi cette empêchement d'enregistrer sous
Est-ce bien ce que l'on veut?
2-Connaissant le simple fait> "soit tout simplement désactiver les macros",
c'est aussi ce que peut faire l'utilisateur.
Est-ce bien ce que l'on veut?
Non est culpa, ti absolvo (qui dirait)
:o)
--
lSteph
On 7 oct, 14:30, "michdenis" <michde...@hotmail.com> wrote:
> Votre honneur,
> Je ne suis coupable de rien, je n'ai rien demandé...
> à l'égard de la proposition que j'ai faite, la mienne est supérieur !
> car plus compréhensible que la tienne !!! Lorsque tu écris :
> "soit tout simplement désactiver les macros", toi, tu sais de
> quoi tu parles mais ce n'est pas nécessairement évident pour
> celui qui n'a pas tes compétences en Excel.
> Vous comprendrez votre honneur que ce n'est pas parce que l'on
> est traduit devant les tribunaux que l'on connaît nécessairement le jargon juridique!
> ;-)
> "LSteph" <gmlst...@gmail.com> a écrit dans le message de groupe de discussion :
> 83adae09-cb65-4c3f-89b8-da4ba296c...@m18g2000vbs.googlegroups.com...
> C'est bien ce que je disais si tu relis ce n'est pas cela le pire!
> ;o))
> On 7 oct, 12:37, "michdenis" <michde...@hotmail.com> wrote:
> > Bonjour Patrick,
> > Si tu ouvres ton fichier sans activer les macros, cela ne t'empêche pas
> > d'y inscrire ta macro et d'enregistrer ton fichier... non ?
> > "Patrick24" <no-s...@wanadoo.fr> a écrit dans le message de groupe de discussion :
> > #ppPIaxRKHA....@TK2MSFTNGP02.phx.gbl...
> > Bonjour,
> > J'aimerai empêcher l'enregistrement de mon modèle
> > J'ai essayé :
> > Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
> > Boolean)
> > ' empêche d'enregistrer-sous
> > If SaveAsUI = True Then Cancel = True ' fonctionne très bien
> > ' et j'ai essayé :
> > Cancel = True
> > ' la effectivement je ne peux plus enregistrer et enregistrer-sous mais le
> > problème c'est que je ne peux même pas enregistrer la macro pour la
> > sauvegarder !
> > End Sub
> > Comment je dois faire ?
> > Merci de votre aide.
> > Patrick24- Masquer le texte des messages précédents -
> - Afficher le texte des messages précédents -- Masquer le texte des messages
> précédents -
- Afficher le texte des messages précédents -
Je ne répondais qu'à la problématique du demandeur
quant à la sauvegarde de la procédure qu'on lui avait
suggérée.
Si cette approche lui convient, il est possible de faire
disparaître la procédure du ThisWorkbook dès que le
fichier modèle s'ouvre la première fois pour engendrer
un fichier "fils".
Je compte sur toi pour lui suggérer comment faire !
;-)
"LSteph" a écrit dans le message de groupe de discussion :
;-) bon bon je m'incline sur ce point que vous dites fort bien mieux
mais me semble primordial (avec explicitations plus nourries)
de souligner les deux autres points bien plus épineux:
1- si on enregistre un modèle
qui ne doit pas changer, ce même modèle va générer un fichier qui
comprendra aussi cette empêchement d'enregistrer sous
Est-ce bien ce que l'on veut?
2-Connaissant le simple fait> "soit tout simplement désactiver les macros",
c'est aussi ce que peut faire l'utilisateur.
Est-ce bien ce que l'on veut?
Non est culpa, ti absolvo (qui dirait)
:o)
--
lSteph
On 7 oct, 14:30, "michdenis" wrote:
> Votre honneur,
> Je ne suis coupable de rien, je n'ai rien demandé...
> à l'égard de la proposition que j'ai faite, la mienne est supérieur !
> car plus compréhensible que la tienne !!! Lorsque tu écris :
> "soit tout simplement désactiver les macros", toi, tu sais de
> quoi tu parles mais ce n'est pas nécessairement évident pour
> celui qui n'a pas tes compétences en Excel.
> Vous comprendrez votre honneur que ce n'est pas parce que l'on
> est traduit devant les tribunaux que l'on connaît nécessairement le jargon juridique!
> ;-)
> "LSteph" a écrit dans le message de groupe de discussion :
>
> C'est bien ce que je disais si tu relis ce n'est pas cela le pire!
> ;o))
> On 7 oct, 12:37, "michdenis" wrote:
> > Bonjour Patrick,
> > Si tu ouvres ton fichier sans activer les macros, cela ne t'empêche pas
> > d'y inscrire ta macro et d'enregistrer ton fichier... non ?
> > "Patrick24" a écrit dans le message de groupe de discussion :
> > #
> > Bonjour,
> > J'aimerai empêcher l'enregistrement de mon modèle
> > J'ai essayé :
> > Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
> > Boolean)
> > ' empêche d'enregistrer-sous
> > If SaveAsUI = True Then Cancel = True ' fonctionne très bien
> > ' et j'ai essayé :
> > Cancel = True
> > ' la effectivement je ne peux plus enregistrer et enregistrer-sous mais le
> > problème c'est que je ne peux même pas enregistrer la macro pour la
> > sauvegarder !
> > End Sub
> > Comment je dois faire ?
> > Merci de votre aide.
> > Patrick24- Masquer le texte des messages précédents -
> - Afficher le texte des messages précédents -- Masquer le texte des messages
> précédents -
- Afficher le texte des messages précédents -
Voici un exemple http://cjoint.com/?khqJBElPxL
Comme c'est un modèle réalisé avec Excel 2003,
tu vas tout voir le code lorsqu'il est ouvert en tant que modèle...
sinon tout le code aura disparu.http://cjoint.com/?khqJBElPxL
Pour ce qui est du code lui-même, on peut faire mieux en
utilisant la bibliothèque
Library VBIDE
C:Program Files (x86)Common FilesMicrosoft SharedVBAVBA6VBE6EXT.OLB
"Microsoft Visual Basic for Applications Extensibility 5.3"
Elle est déjà présente (cocher comme référence dans le fichier soumis) en espérant
que tu t'en serves pour produire une procédure de type plus avancée p our
supprimer les procédures non nécessaires.
;-)
"LSteph" a écrit dans le message de groupe de disc ussion :
Le principe découlerait de ce genre d'instruction qui par exemple
serait simple pour une feuille générée depuis un classeur:
With ActiveWorkbook.VBProject.VBComponents(ActiveWorkbook.Sheets
("Fiche"). _
CodeName).CodeModule
.DeleteLines 1, .CountOfLines
.CodePane.Window.Close
End With
Or, si l'on voulait effectuer cela sur le thisworkbok lui-même, j e
ne vois pas trop d'où lancer ce code, pourqu'il ne reste plus de code
dans le classeur généré,
à moins que le modèle n'appelle lui même un autre classeur... c'est
possible..
Mais!.. dans la mesure où le point 2 demeure et le reste pose trop de
contraintes peu sûres, il va rester peu d'intérêt.
Car, quoiqu'on puisse contourner par la méthode consistant à fo rcer
l'activation des macros
dont de nombreux exemples codes sont disponibles sur ce forum et dont
une bonne référence ici:http://www.excelabo.net/trucs/forcer_macro s
cela est compromis si l'on a un réglage trop élevé de la sécurit é,
ta suggestion de contournement du point 1 restant à conditionner au
fait que l'on ouvre le xlt lui même ou que l'on ouvre un xls qu'il
génère
et son principe dépendant également d'un réglage de sécurité des
macros exigeant d'avoir coché faire confiance au projet!
Quelle serait ton idée pour contourner tout cela?
Cordialement.
--
lSteph
On 7 oct, 15:48, "michdenis" wrote:
> Je ne répondais qu'à la problématique du demandeur
> quant à la sauvegarde de la procédure qu'on lui avait
> suggérée.
> Si cette approche lui convient, il est possible de faire
> disparaître la procédure du ThisWorkbook dès que le
> fichier modèle s'ouvre la première fois pour engendrer
> un fichier "fils".
> Je compte sur toi pour lui suggérer comment faire !
> ;-)
> "LSteph" a écrit dans le message de groupe de di scussion :
>
> ;-) bon bon je m'incline sur ce point que vous dites fort bien mieux
> mais me semble primordial (avec explicitations plus nourries)
> de souligner les deux autres points bien plus épineux:
> 1- si on enregistre un modèle
> qui ne doit pas changer, ce même modèle va générer un fichier q ui
> comprendra aussi cette empêchement d'enregistrer sous
> Est-ce bien ce que l'on veut?
> 2-Connaissant le simple fait> "soit tout simplement désactiver les ma cros",
> c'est aussi ce que peut faire l'utilisateur.
> Est-ce bien ce que l'on veut?
> Non est culpa, ti absolvo (qui dirait)
> :o)
> --
> lSteph
> On 7 oct, 14:30, "michdenis" wrote:
> > Votre honneur,
> > Je ne suis coupable de rien, je n'ai rien demandé...
> > à l'égard de la proposition que j'ai faite, la mienne est supér ieur !
> > car plus compréhensible que la tienne !!! Lorsque tu écris :
> > "soit tout simplement désactiver les macros", toi, tu sais de
> > quoi tu parles mais ce n'est pas nécessairement évident pour
> > celui qui n'a pas tes compétences en Excel.
> > Vous comprendrez votre honneur que ce n'est pas parce que l'on
> > est traduit devant les tribunaux que l'on connaît nécessairement le jargon juridique!
> > ;-)
> > "LSteph" a écrit dans le message de groupe de discussion :
> >
> > C'est bien ce que je disais si tu relis ce n'est pas cela le pire!
> > ;o))
> > On 7 oct, 12:37, "michdenis" wrote:
> > > Bonjour Patrick,
> > > Si tu ouvres ton fichier sans activer les macros, cela ne t'empêc he pas
> > > d'y inscrire ta macro et d'enregistrer ton fichier... non ?
> > > "Patrick24" a écrit dans le message de group e de discussion :
> > > #
> > > Bonjour,
> > > J'aimerai empêcher l'enregistrement de mon modèle
> > > J'ai essayé :
> > > Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel A s
> > > Boolean)
> > > ' empêche d'enregistrer-sous
> > > If SaveAsUI = True Then Cancel = True ' fonctionne très bien
> > > ' et j'ai essayé :
> > > Cancel = True
> > > ' la effectivement je ne peux plus enregistrer et enregistrer-sous mais le
> > > problème c'est que je ne peux même pas enregistrer la macro pou r la
> > > sauvegarder !
> > > End Sub
> > > Comment je dois faire ?
> > > Merci de votre aide.
> > > Patrick24- Masquer le texte des messages précédents -
> > - Afficher le texte des messages précédents -- Masquer le texte d es messages
> > précédents -
> - Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Voici un exemple http://cjoint.com/?khqJBElPxL
Comme c'est un modèle réalisé avec Excel 2003,
tu vas tout voir le code lorsqu'il est ouvert en tant que modèle...
sinon tout le code aura disparu.http://cjoint.com/?khqJBElPxL
Pour ce qui est du code lui-même, on peut faire mieux en
utilisant la bibliothèque
Library VBIDE
C:Program Files (x86)Common FilesMicrosoft SharedVBAVBA6VBE6EXT.OLB
"Microsoft Visual Basic for Applications Extensibility 5.3"
Elle est déjà présente (cocher comme référence dans le fichier soumis) en espérant
que tu t'en serves pour produire une procédure de type plus avancée p our
supprimer les procédures non nécessaires.
;-)
"LSteph" <gmlst...@gmail.com> a écrit dans le message de groupe de disc ussion :
71cf8b26-fdf5-4fae-930a-20741ac48...@g23g2000vbr.googlegroups.com...
Le principe découlerait de ce genre d'instruction qui par exemple
serait simple pour une feuille générée depuis un classeur:
With ActiveWorkbook.VBProject.VBComponents(ActiveWorkbook.Sheets
("Fiche"). _
CodeName).CodeModule
.DeleteLines 1, .CountOfLines
.CodePane.Window.Close
End With
Or, si l'on voulait effectuer cela sur le thisworkbok lui-même, j e
ne vois pas trop d'où lancer ce code, pourqu'il ne reste plus de code
dans le classeur généré,
à moins que le modèle n'appelle lui même un autre classeur... c'est
possible..
Mais!.. dans la mesure où le point 2 demeure et le reste pose trop de
contraintes peu sûres, il va rester peu d'intérêt.
Car, quoiqu'on puisse contourner par la méthode consistant à fo rcer
l'activation des macros
dont de nombreux exemples codes sont disponibles sur ce forum et dont
une bonne référence ici:http://www.excelabo.net/trucs/forcer_macro s
cela est compromis si l'on a un réglage trop élevé de la sécurit é,
ta suggestion de contournement du point 1 restant à conditionner au
fait que l'on ouvre le xlt lui même ou que l'on ouvre un xls qu'il
génère
et son principe dépendant également d'un réglage de sécurité des
macros exigeant d'avoir coché faire confiance au projet!
Quelle serait ton idée pour contourner tout cela?
Cordialement.
--
lSteph
On 7 oct, 15:48, "michdenis" <michde...@hotmail.com> wrote:
> Je ne répondais qu'à la problématique du demandeur
> quant à la sauvegarde de la procédure qu'on lui avait
> suggérée.
> Si cette approche lui convient, il est possible de faire
> disparaître la procédure du ThisWorkbook dès que le
> fichier modèle s'ouvre la première fois pour engendrer
> un fichier "fils".
> Je compte sur toi pour lui suggérer comment faire !
> ;-)
> "LSteph" <gmlst...@gmail.com> a écrit dans le message de groupe de di scussion :
> 4c2cafcc-981d-435b-991c-4879ef13a...@d23g2000vbm.googlegroups.com...
> ;-) bon bon je m'incline sur ce point que vous dites fort bien mieux
> mais me semble primordial (avec explicitations plus nourries)
> de souligner les deux autres points bien plus épineux:
> 1- si on enregistre un modèle
> qui ne doit pas changer, ce même modèle va générer un fichier q ui
> comprendra aussi cette empêchement d'enregistrer sous
> Est-ce bien ce que l'on veut?
> 2-Connaissant le simple fait> "soit tout simplement désactiver les ma cros",
> c'est aussi ce que peut faire l'utilisateur.
> Est-ce bien ce que l'on veut?
> Non est culpa, ti absolvo (qui dirait)
> :o)
> --
> lSteph
> On 7 oct, 14:30, "michdenis" <michde...@hotmail.com> wrote:
> > Votre honneur,
> > Je ne suis coupable de rien, je n'ai rien demandé...
> > à l'égard de la proposition que j'ai faite, la mienne est supér ieur !
> > car plus compréhensible que la tienne !!! Lorsque tu écris :
> > "soit tout simplement désactiver les macros", toi, tu sais de
> > quoi tu parles mais ce n'est pas nécessairement évident pour
> > celui qui n'a pas tes compétences en Excel.
> > Vous comprendrez votre honneur que ce n'est pas parce que l'on
> > est traduit devant les tribunaux que l'on connaît nécessairement le jargon juridique!
> > ;-)
> > "LSteph" <gmlst...@gmail.com> a écrit dans le message de groupe de discussion :
> > 83adae09-cb65-4c3f-89b8-da4ba296c...@m18g2000vbs.googlegroups.com...
> > C'est bien ce que je disais si tu relis ce n'est pas cela le pire!
> > ;o))
> > On 7 oct, 12:37, "michdenis" <michde...@hotmail.com> wrote:
> > > Bonjour Patrick,
> > > Si tu ouvres ton fichier sans activer les macros, cela ne t'empêc he pas
> > > d'y inscrire ta macro et d'enregistrer ton fichier... non ?
> > > "Patrick24" <no-s...@wanadoo.fr> a écrit dans le message de group e de discussion :
> > > #ppPIaxRKHA....@TK2MSFTNGP02.phx.gbl...
> > > Bonjour,
> > > J'aimerai empêcher l'enregistrement de mon modèle
> > > J'ai essayé :
> > > Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel A s
> > > Boolean)
> > > ' empêche d'enregistrer-sous
> > > If SaveAsUI = True Then Cancel = True ' fonctionne très bien
> > > ' et j'ai essayé :
> > > Cancel = True
> > > ' la effectivement je ne peux plus enregistrer et enregistrer-sous mais le
> > > problème c'est que je ne peux même pas enregistrer la macro pou r la
> > > sauvegarder !
> > > End Sub
> > > Comment je dois faire ?
> > > Merci de votre aide.
> > > Patrick24- Masquer le texte des messages précédents -
> > - Afficher le texte des messages précédents -- Masquer le texte d es messages
> > précédents -
> - Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Voici un exemple http://cjoint.com/?khqJBElPxL
Comme c'est un modèle réalisé avec Excel 2003,
tu vas tout voir le code lorsqu'il est ouvert en tant que modèle...
sinon tout le code aura disparu.http://cjoint.com/?khqJBElPxL
Pour ce qui est du code lui-même, on peut faire mieux en
utilisant la bibliothèque
Library VBIDE
C:Program Files (x86)Common FilesMicrosoft SharedVBAVBA6VBE6EXT.OLB
"Microsoft Visual Basic for Applications Extensibility 5.3"
Elle est déjà présente (cocher comme référence dans le fichier soumis) en espérant
que tu t'en serves pour produire une procédure de type plus avancée p our
supprimer les procédures non nécessaires.
;-)
"LSteph" a écrit dans le message de groupe de disc ussion :
Le principe découlerait de ce genre d'instruction qui par exemple
serait simple pour une feuille générée depuis un classeur:
With ActiveWorkbook.VBProject.VBComponents(ActiveWorkbook.Sheets
("Fiche"). _
CodeName).CodeModule
.DeleteLines 1, .CountOfLines
.CodePane.Window.Close
End With
Or, si l'on voulait effectuer cela sur le thisworkbok lui-même, j e
ne vois pas trop d'où lancer ce code, pourqu'il ne reste plus de code
dans le classeur généré,
à moins que le modèle n'appelle lui même un autre classeur... c'est
possible..
Mais!.. dans la mesure où le point 2 demeure et le reste pose trop de
contraintes peu sûres, il va rester peu d'intérêt.
Car, quoiqu'on puisse contourner par la méthode consistant à fo rcer
l'activation des macros
dont de nombreux exemples codes sont disponibles sur ce forum et dont
une bonne référence ici:http://www.excelabo.net/trucs/forcer_macro s
cela est compromis si l'on a un réglage trop élevé de la sécurit é,
ta suggestion de contournement du point 1 restant à conditionner au
fait que l'on ouvre le xlt lui même ou que l'on ouvre un xls qu'il
génère
et son principe dépendant également d'un réglage de sécurité des
macros exigeant d'avoir coché faire confiance au projet!
Quelle serait ton idée pour contourner tout cela?
Cordialement.
--
lSteph
On 7 oct, 15:48, "michdenis" wrote:
> Je ne répondais qu'à la problématique du demandeur
> quant à la sauvegarde de la procédure qu'on lui avait
> suggérée.
> Si cette approche lui convient, il est possible de faire
> disparaître la procédure du ThisWorkbook dès que le
> fichier modèle s'ouvre la première fois pour engendrer
> un fichier "fils".
> Je compte sur toi pour lui suggérer comment faire !
> ;-)
> "LSteph" a écrit dans le message de groupe de di scussion :
>
> ;-) bon bon je m'incline sur ce point que vous dites fort bien mieux
> mais me semble primordial (avec explicitations plus nourries)
> de souligner les deux autres points bien plus épineux:
> 1- si on enregistre un modèle
> qui ne doit pas changer, ce même modèle va générer un fichier q ui
> comprendra aussi cette empêchement d'enregistrer sous
> Est-ce bien ce que l'on veut?
> 2-Connaissant le simple fait> "soit tout simplement désactiver les ma cros",
> c'est aussi ce que peut faire l'utilisateur.
> Est-ce bien ce que l'on veut?
> Non est culpa, ti absolvo (qui dirait)
> :o)
> --
> lSteph
> On 7 oct, 14:30, "michdenis" wrote:
> > Votre honneur,
> > Je ne suis coupable de rien, je n'ai rien demandé...
> > à l'égard de la proposition que j'ai faite, la mienne est supér ieur !
> > car plus compréhensible que la tienne !!! Lorsque tu écris :
> > "soit tout simplement désactiver les macros", toi, tu sais de
> > quoi tu parles mais ce n'est pas nécessairement évident pour
> > celui qui n'a pas tes compétences en Excel.
> > Vous comprendrez votre honneur que ce n'est pas parce que l'on
> > est traduit devant les tribunaux que l'on connaît nécessairement le jargon juridique!
> > ;-)
> > "LSteph" a écrit dans le message de groupe de discussion :
> >
> > C'est bien ce que je disais si tu relis ce n'est pas cela le pire!
> > ;o))
> > On 7 oct, 12:37, "michdenis" wrote:
> > > Bonjour Patrick,
> > > Si tu ouvres ton fichier sans activer les macros, cela ne t'empêc he pas
> > > d'y inscrire ta macro et d'enregistrer ton fichier... non ?
> > > "Patrick24" a écrit dans le message de group e de discussion :
> > > #
> > > Bonjour,
> > > J'aimerai empêcher l'enregistrement de mon modèle
> > > J'ai essayé :
> > > Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel A s
> > > Boolean)
> > > ' empêche d'enregistrer-sous
> > > If SaveAsUI = True Then Cancel = True ' fonctionne très bien
> > > ' et j'ai essayé :
> > > Cancel = True
> > > ' la effectivement je ne peux plus enregistrer et enregistrer-sous mais le
> > > problème c'est que je ne peux même pas enregistrer la macro pou r la
> > > sauvegarder !
> > > End Sub
> > > Comment je dois faire ?
> > > Merci de votre aide.
> > > Patrick24- Masquer le texte des messages précédents -
> > - Afficher le texte des messages précédents -- Masquer le texte d es messages
> > précédents -
> - Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
... sans que
les macros soient activées ou que tu as mis Enabled = False pour
désactiver les événements.
2-par ailleurs (ce qui répond à la question mais compromet un peu ton
objectif)
-ceux qui voudraient contourner aussi la mesure envisagée
soit tout simplement désactiver les macros
soit depuis une macro quelconque:Application.enableeventsúlse
... sans que
les macros soient activées ou que tu as mis Enabled = False pour
désactiver les événements.
2-par ailleurs (ce qui répond à la question mais compromet un peu ton
objectif)
-ceux qui voudraient contourner aussi la mesure envisagée
soit tout simplement désactiver les macros
soit depuis une macro quelconque:
Application.enableeventsúlse
... sans que
les macros soient activées ou que tu as mis Enabled = False pour
désactiver les événements.
2-par ailleurs (ce qui répond à la question mais compromet un peu ton
objectif)
-ceux qui voudraient contourner aussi la mesure envisagée
soit tout simplement désactiver les macros
soit depuis une macro quelconque:Application.enableeventsúlse
Merci pour toute les réponses...
Je pense avoir trouvé une solution simple pour moi !
puisque pas *.xlt ou *.xltm mais *.xls
'*********************************************************************** ***********************************ActiveWorkbook.Save ' l'événemen t va de suite passé à Private SubWorkbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)'*********************************************** ************************************************************Exit ******* *************************************************************************** *************************************************************************** *******
Bonsoir,
Merci pour toute les réponses...
Je pense avoir trouvé une solution simple pour moi !
Donc j'ai ce que j'appelle un modèle effectivement le terme est f aux
puisque pas *.xlt ou *.xltm mais *.xls
Dans ma feuille j'ai un bouton "Bouton" qui envoi la macro....
Merci pour toute les réponses...
Je pense avoir trouvé une solution simple pour moi !
puisque pas *.xlt ou *.xltm mais *.xls
'*********************************************************************** ***********************************ActiveWorkbook.Save ' l'événemen t va de suite passé à Private SubWorkbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)'*********************************************** ************************************************************Exit ******* *************************************************************************** *************************************************************************** *******
Bonsoir,
Merci pour toute les réponses...
Je pense avoir trouvé une solution simple pour moi !
Donc j'ai ce que j'appelle un modèle effectivement le terme est f aux
puisque pas *.xlt ou *.xltm mais *.xls
Dans ma feuille j'ai un bouton "Bouton" qui envoi la macro....
Merci pour toute les réponses...
Je pense avoir trouvé une solution simple pour moi !
puisque pas *.xlt ou *.xltm mais *.xls
'*********************************************************************** ***********************************ActiveWorkbook.Save ' l'événemen t va de suite passé à Private SubWorkbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)'*********************************************** ************************************************************Exit ******* *************************************************************************** *************************************************************************** *******
Bonsoir,
Merci pour toute les réponses...
Je pense avoir trouvé une solution simple pour moi !
Donc j'ai ce que j'appelle un modèle effectivement le terme est f aux
puisque pas *.xlt ou *.xltm mais *.xls
Dans ma feuille j'ai un bouton "Bouton" qui envoi la macro....
Si je poursuivais ton raisonnement, il faudrait arrêter de produire
des applications avec Excel sous prétexte de la protection de
l'application Excel est limitée, et, un ou des usagers pourraient
vouloir tout bousiller ! Curieuse façon de penser !!!!!!!!! À la
limite, certains pourraient même supprimer le fichier avant de
l'ouvrir et ou passer l'ordinateur par la fenêtre ...
Tu évolues dans
un milieu de travail particulier.
Si je poursuivais ton raisonnement, il faudrait arrêter de produire
des applications avec Excel sous prétexte de la protection de
l'application Excel est limitée, et, un ou des usagers pourraient
vouloir tout bousiller ! Curieuse façon de penser !!!!!!!!! À la
limite, certains pourraient même supprimer le fichier avant de
l'ouvrir et ou passer l'ordinateur par la fenêtre ...
Tu évolues dans
un milieu de travail particulier.
Si je poursuivais ton raisonnement, il faudrait arrêter de produire
des applications avec Excel sous prétexte de la protection de
l'application Excel est limitée, et, un ou des usagers pourraient
vouloir tout bousiller ! Curieuse façon de penser !!!!!!!!! À la
limite, certains pourraient même supprimer le fichier avant de
l'ouvrir et ou passer l'ordinateur par la fenêtre ...
Tu évolues dans
un milieu de travail particulier.