Dupliquer un classeur
Bonjour !
Voici mon problème : je voudrais dupliquer le fichier Excel en cours un certain nombre de fois.
SAUF qu'avant de le sauvegarder, j'aimerais faire des modifs dessus (supprimer des onglets, etc).
Le truc, c'est que le ActiveWorkbook.SaveCopyAs, c'est bien gentil, mais ça m'oblige à rouvrir le fichier ainsi créé pour faire les modifs, et je veux éviter ça.
Pour plus de détail, il se trouve que j'ai dans mon classeur un UserForm qui contient un objet InkPicture.
Lorsque j'ouvre mon fichier, j'ai un message d'alerte qui me dit « Cette application est sur le point d'initialiser les contrôles ActiveX potentiellement non sûr. Si la source de ce fichier est fiable, cliquez sur OK ».
Bon, ce n'est pas très grave, et je ne peux de toute façon pas faire autrement, car la seule solution pour virer ce message est de modifier le niveau de sécurité ou de modifier la base de registre Windows, ce que, dans tous les cas, je ne peux pas faire, puisque je n'ai pas les droits administrateur sur mon poste.
Le truc, c'est qu'il faut que je duplique ce fichier un certain nombre de fois (mettons 50).
Or si je fais une boucle dans ce goût là :
For L = 1 To 50
ActiveWorkbook.SaveCopyAs Fichier(L)
Set Cible = Workbooks.Open(Fichier(L), False, False)
Cible.Sheets(Array("Machin", "Truc", "Bidule")).Delete
Cible.Close vbTrue
Next L…eh bien j'aurai mon fameux message sur les contrôles ActiveX qui va apparaitre 50 fois !
(même, évidemment, si je mets Application.DisplayAlerts = False avant, sinon ce serait trop facile !)
Bref, si quelqu'un a une idée, soit pour virer le message ActiveX sur le fichier (et pas sur le poste), soit pour faire mes manipulations sur le fichier sans avoir à l'enregistrer, l'ouvrir, l'enregistrer, puis le fermer, je suis preneur !!!
Merci d'avance !
Bonjour,
je pense qu'il va être difficile de faire un codage vba dans un classeur dont on veut faire une copie
et des moficiations x fois.
Peut être qu'en utilisant troisième fichier qui servirait uniquement à l'encodage ?
(Ouverture d'un fichier source / enregistrement sous / modifications / fermeture / réouverture fichier source.)
Ceci permettrai que le fichier ou se trouve la macro lui reste ouvert.
Merci pour la réponse, mais mon souci, c'est que c'est le fichier que je souhaite dupliquer qui contient l'InkPicture qui génère les messages d'alerte.
Donc dans tous les cas, du moment qu'il y a ouverture de fichier, il y aura le message d'erreur.