Macro / Génération de dcuments / Désactiver les macros
4 réponses
Denel
Bonjour,
J'ai créé un .dot qui génére des courriers mes macros ne devrait pas être
dans mes
documents générés et pourtant elle le sont quand même :)
Comment remédier à ce problême ?
Voila le code de la macro contenu dans le .dot :
Private Sub Document_New()
Dim myConn
Dim myConn1
Dim myRecordset
Dim mySql
' instanciation des objets ADO
Set myConn = CreateObject("ADODB.Connection")
Set myConn1 = CreateObject("ADODB.Connection")
Set myRecordset = CreateObject("ADODB.Recordset")
Set myRecordsetDetail = CreateObject("ADODB.Recordset")
Set myRecordsetResponsableClient = CreateObject("ADODB.Recordset")
' Définir les propriétés de la connexion
myConn.Open = "Provider=SQLOLEDB.1;Data Source=AFI13012M; Initial
Catalog=Afirec ;user id = 'Applixxxx';password='xxxxx'"
myConn1.Open = "Provider=SQLOLEDB.1;Data Source=AFI13012M; Initial
Catalog=Afirec ;user id = 'Applixxxxx';password='xxxx'"
' Définir la requète SQL
mySql = "SELECT * FROM [DU CLIENTS]"
'Ouvrir la connexion
myRecordset.Open mySql, myConn
myRecordset.MoveFirst
Do While Not myRecordset.EOF
'On Error Resume Next
' Définir la requète SQL pour la liste des responsables clients
mySqlResponsableClient = "SELECT * FROM RESPONSABLECLIENT WHERE ClienAux =
'" & myRecordset.Fields.Item("ClienComptAux").Value & "'"
'Ouvrir la connexion pour la liste des responsables
myRecordsetResponsableClient.Open mySqlResponsableClient, myConn1
myRecordsetResponsableClient.MoveFirst
' On Remplit la zone de texte contenant les détails
Responsable.Caption =
myRecordsetResponsableClient.Fields.Item("ClienNomRespon").Value
' ON AFFICHE LES DETAILS
mySqlDetail = "SELECT * FROM [DU CLIENTS DETAILS]WHERE ClienComptAux = '" &
myRecordset.Fields.Item("ClienComptAux").Value & "'"
myRecordsetDetail.Open mySqlDetail, myConn
myRecordsetDetail.MoveFirst
Tables(1).Rows.Select
Do While Not myRecordsetDetail.EOF
' On Remplit la zone de texte contenant les détails
Selection.TypeText
(myRecordsetDetail.Fields.Item("ClienComptRefer").Value)
Selection.MoveRight Unit:=wdCell
Selection.TypeText
(myRecordsetDetail.Fields.Item("ClienComptDate").Value)
Selection.MoveRight Unit:=wdCell
Selection.TypeText (myRecordsetDetail.Fields.Item("ClienEncaiNet").Value
& " Euros")
Selection.InsertRowsBelow 1
Lorsque j'ouvre les documents générés, j'ai la boite de dialogue me demandant si je veut executer la macro..
Qu'est-ce qui te fait dire qu'elles y sont ?
Geo
Bonjour Denel
Lorsque j'ouvre les documents générés, j'ai la boite de dialogue me demandant si je veut exécuter la macro..
Ah mais ce n'est pas une preuve :-) Les macros sont probablement dans ton modèle de base : normal.dot et quand tu ouvres un document, Word va chercher les macros dans les modèles sans te le dire. Pour en avoir le coeur net, plusieurs solutions : - envoyer ton document à quelqu'un qui a un modèle sans amcro, - renommer ton modèle, Word en refera un sans macro, - vérifier dans vbe où sont tes macros : Alt + F11 pour passer dans VBe CTRL + R pour ouvrir l'explorateur de projet (ou l'activer) Tu vois dans la hiérarchie :
Normal Microsoft Word Objets feuilles Modules nom des modules de macro les macros Project (nom de ton document) Microsoft Word Objets etc. mais pas de Modules, donc pas de macros.
--
A+
Bonjour Denel
Lorsque j'ouvre les documents générés, j'ai la boite de dialogue me
demandant si je veut exécuter la macro..
Ah mais ce n'est pas une preuve :-)
Les macros sont probablement dans ton modèle de base : normal.dot
et quand tu ouvres un document, Word va chercher les macros dans les
modèles sans te le dire.
Pour en avoir le coeur net, plusieurs solutions :
- envoyer ton document à quelqu'un qui a un modèle sans amcro,
- renommer ton modèle, Word en refera un sans macro,
- vérifier dans vbe où sont tes macros :
Alt + F11 pour passer dans VBe
CTRL + R pour ouvrir l'explorateur de projet (ou l'activer)
Tu vois dans la hiérarchie :
Normal
Microsoft Word Objets
feuilles
Modules
nom des modules de macro
les macros
Project (nom de ton document)
Microsoft Word Objets
etc. mais pas de Modules, donc pas de macros.
Lorsque j'ouvre les documents générés, j'ai la boite de dialogue me demandant si je veut exécuter la macro..
Ah mais ce n'est pas une preuve :-) Les macros sont probablement dans ton modèle de base : normal.dot et quand tu ouvres un document, Word va chercher les macros dans les modèles sans te le dire. Pour en avoir le coeur net, plusieurs solutions : - envoyer ton document à quelqu'un qui a un modèle sans amcro, - renommer ton modèle, Word en refera un sans macro, - vérifier dans vbe où sont tes macros : Alt + F11 pour passer dans VBe CTRL + R pour ouvrir l'explorateur de projet (ou l'activer) Tu vois dans la hiérarchie :
Normal Microsoft Word Objets feuilles Modules nom des modules de macro les macros Project (nom de ton document) Microsoft Word Objets etc. mais pas de Modules, donc pas de macros.
--
A+
Frédéric Denel
J'ai vérifié mais les macros d'origine du .dot se retrouve bien dans les .doc générés et je voudrais savoir comment éviter cela :)
J'ai vérifié mais les macros d'origine du .dot se retrouve bien dans les
.doc générés et je voudrais savoir comment éviter cela :)