Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

copie de feuille dans nouveau classeur sans le code

9 réponses
Avatar
PAN GOT
Bonjour,
je crois avoir deja vu la question passée mais je ne la retrouve pas dans
mes notes.
Dans une macro, je fait une copie d'une feuille dans un nouveau classeur
mais cette feuille contient quelques lignes de code que je voudrais
supprimer.
Si quelqu'un avait les quelques lignes de code qui vont bien.
D'avance, merci.
Patrick

9 réponses

Avatar
LSteph
Bonjour,

un exemple type, mais il faut avoir fait confiance au projet vb dans
les param de sécurité des macros.

With ActiveWorkbook.VBProject.VBComponents(ActiveWorkbook.Sheets
("Fiche"). _
CodeName).CodeModule
.DeleteLines 1, .CountOfLines
.CodePane.Window.Close
End With

'lSteph

On 8 sep, 14:07, "PAN GOT" wrote:
Bonjour,
je crois avoir deja vu la question passée mais je ne la retrouve pas da ns
mes notes.
Dans une macro, je fait une copie d'une feuille dans un nouveau classeur
mais cette feuille contient quelques lignes de code que je voudrais
supprimer.
Si quelqu'un avait les quelques lignes de code qui vont bien.
D'avance, merci.
Patrick


Avatar
PAN GOT
Bonjour LSteph

j'obtiens un message d'erreur d'execution '1004' L'acces par programme au
projet Visual Basic n'est pas fiable.
Pour préciser mon probleme, voici ce que je fait.
Dans un classeur, j'ai des feuilles avec juste un bouton de commande qui me
permet de lancer une macro genre "Run impression_dernier_indice".

Avec une autre macro dans une UsF, je copie une ou plusieurs de ces feuilles
dans de nouveaux classeurs avec une boucle et
Sheets(nomfeuille).select
Sheets(nomfeuille).copy

aprés je selectionne le bouton de commande present sur la feuille avec
Activesheet.Shapes.selectAll

et je le supprime avec
Selection.cut

apres je ferme ce nouveau classeur en sauvegardant avec son nom.
Tous fonctionne mais comme il reste cette mini macro, à l'ouverture j'ai une
alerte.
C'est ces 3 lignes de code que je cherche à supprimer.
Merci pour ton aide.
Patrick


"LSteph" a écrit dans le message de news:

Bonjour,

un exemple type, mais il faut avoir fait confiance au projet vb dans
les param de sécurité des macros.

With ActiveWorkbook.VBProject.VBComponents(ActiveWorkbook.Sheets
("Fiche"). _
CodeName).CodeModule
.DeleteLines 1, .CountOfLines
.CodePane.Window.Close
End With

'lSteph

On 8 sep, 14:07, "PAN GOT" wrote:
Bonjour,
je crois avoir deja vu la question passée mais je ne la retrouve pas dans
mes notes.
Dans une macro, je fait une copie d'une feuille dans un nouveau classeur
mais cette feuille contient quelques lignes de code que je voudrais
supprimer.
Si quelqu'un avait les quelques lignes de code qui vont bien.
D'avance, merci.
Patrick


Avatar
LSteph
;o)
..ok..je remets:

>>...mais il faut avoir fait confiance au projet vb dans
>>les param de sécurité des macros.

Menu Outils d'excel Macros Sécurité des Macros
Onglet1 Niveau Moyen ou Faible
Onglet 2 en bas Cocher
Faire Confiance au projet Visual Basic



PAN GOT a écrit :
Bonjour LSteph

j'obtiens un message d'erreur d'execution '1004' L'acces par programme au
projet Visual Basic n'est pas fiable.
Pour préciser mon probleme, voici ce que je fait.
Dans un classeur, j'ai des feuilles avec juste un bouton de commande qui me
permet de lancer une macro genre "Run impression_dernier_indice".

Avec une autre macro dans une UsF, je copie une ou plusieurs de ces feuilles
dans de nouveaux classeurs avec une boucle et
Sheets(nomfeuille).select
Sheets(nomfeuille).copy

aprés je selectionne le bouton de commande present sur la feuille avec
Activesheet.Shapes.selectAll

et je le supprime avec
Selection.cut

apres je ferme ce nouveau classeur en sauvegardant avec son nom.
Tous fonctionne mais comme il reste cette mini macro, à l'ouverture j'ai une
alerte.
C'est ces 3 lignes de code que je cherche à supprimer.
Merci pour ton aide.
Patrick


"LSteph" a écrit dans le message de news:

Bonjour,

un exemple type, mais il faut avoir fait confiance au projet vb dans
les param de sécurité des macros.

With ActiveWorkbook.VBProject.VBComponents(ActiveWorkbook.Sheets
("Fiche"). _
CodeName).CodeModule
.DeleteLines 1, .CountOfLines
.CodePane.Window.Close
End With

'lSteph

On 8 sep, 14:07, "PAN GOT" wrote:
Bonjour,
je crois avoir deja vu la question passée mais je ne la retrouve pas dans
mes notes.
Dans une macro, je fait une copie d'une feuille dans un nouveau classeur
mais cette feuille contient quelques lignes de code que je voudrais
supprimer.
Si quelqu'un avait les quelques lignes de code qui vont bien.
D'avance, merci.
Patrick






Avatar
PAN GOT
Bonjour LSteph,

Excuse moi, mais je ne connaissais pas cette option.

Une fois cocher cette option, effectivement ça fonctionne bien.

Par contre je ne comprends pas très bien.

Quand j'ouvre le fichier ainsi créé, je n'ai plus ces lignes de code. Je n'ai
aucune ligne de code ni dans la feuille ni dans le classeur et pourtant,
Excel continu de me poser la question en m'indiquant que ce fichier contient
une macro ! ?????

Si manuellement, je supprime ce code avant la copie et je fais la même
manip, c'est a dire copie dans un autre classeur etc., je n'ai pas ce
message d'Excel.

Existe-t-il un moyen de voir ou ce cache ce code ?

A quoi correspond cette option de "faire confiance au projet VB" ?

D'avance, merci.

Patrick



"LSteph" a écrit dans le message de news:

;o)
..ok..je remets:

>>...mais il faut avoir fait confiance au projet vb dans
>>les param de sécurité des macros.

Menu Outils d'excel Macros Sécurité des Macros
Onglet1 Niveau Moyen ou Faible
Onglet 2 en bas Cocher
Faire Confiance au projet Visual Basic



PAN GOT a écrit :
Bonjour LSteph

j'obtiens un message d'erreur d'execution '1004' L'acces par programme au
projet Visual Basic n'est pas fiable.
Pour préciser mon probleme, voici ce que je fait.
Dans un classeur, j'ai des feuilles avec juste un bouton de commande qui
me permet de lancer une macro genre "Run impression_dernier_indice".

Avec une autre macro dans une UsF, je copie une ou plusieurs de ces
feuilles dans de nouveaux classeurs avec une boucle et
Sheets(nomfeuille).select
Sheets(nomfeuille).copy

aprés je selectionne le bouton de commande present sur la feuille avec
Activesheet.Shapes.selectAll

et je le supprime avec
Selection.cut

apres je ferme ce nouveau classeur en sauvegardant avec son nom.
Tous fonctionne mais comme il reste cette mini macro, à l'ouverture j'ai
une alerte.
C'est ces 3 lignes de code que je cherche à supprimer.
Merci pour ton aide.
Patrick


"LSteph" a écrit dans le message de news:

Bonjour,

un exemple type, mais il faut avoir fait confiance au projet vb dans
les param de sécurité des macros.

With ActiveWorkbook.VBProject.VBComponents(ActiveWorkbook.Sheets
("Fiche"). _
CodeName).CodeModule
.DeleteLines 1, .CountOfLines
.CodePane.Window.Close
End With

'lSteph

On 8 sep, 14:07, "PAN GOT" wrote:
Bonjour,
je crois avoir deja vu la question passée mais je ne la retrouve pas
dans
mes notes.
Dans une macro, je fait une copie d'une feuille dans un nouveau classeur
mais cette feuille contient quelques lignes de code que je voudrais
supprimer.
Si quelqu'un avait les quelques lignes de code qui vont bien.
D'avance, merci.
Patrick







Avatar
michdenis
Bonjour Pan Got,

Le simple fait d'avoir un "module standard" par exemple dans un classeur
sans aucun code à l'intérieur est suffisant pour qu'Excel continue de te poser
la question sur l'activation des macros à l'ouverture du fichier.

Solution : Supprime tous les modules ... et enregistre ton fichier.




"PAN GOT" a écrit dans le message de groupe de discussion :
up#
Bonjour LSteph,

Excuse moi, mais je ne connaissais pas cette option.

Une fois cocher cette option, effectivement ça fonctionne bien.

Par contre je ne comprends pas très bien.

Quand j'ouvre le fichier ainsi créé, je n'ai plus ces lignes de code. Je n'ai
aucune ligne de code ni dans la feuille ni dans le classeur et pourtant,
Excel continu de me poser la question en m'indiquant que ce fichier contient
une macro ! ?????

Si manuellement, je supprime ce code avant la copie et je fais la même
manip, c'est a dire copie dans un autre classeur etc., je n'ai pas ce
message d'Excel.

Existe-t-il un moyen de voir ou ce cache ce code ?

A quoi correspond cette option de "faire confiance au projet VB" ?

D'avance, merci.

Patrick



"LSteph" a écrit dans le message de news:

;o)
..ok..je remets:

>>...mais il faut avoir fait confiance au projet vb dans
>>les param de sécurité des macros.

Menu Outils d'excel Macros Sécurité des Macros
Onglet1 Niveau Moyen ou Faible
Onglet 2 en bas Cocher
Faire Confiance au projet Visual Basic



PAN GOT a écrit :
Bonjour LSteph

j'obtiens un message d'erreur d'execution '1004' L'acces par programme au
projet Visual Basic n'est pas fiable.
Pour préciser mon probleme, voici ce que je fait.
Dans un classeur, j'ai des feuilles avec juste un bouton de commande qui
me permet de lancer une macro genre "Run impression_dernier_indice".

Avec une autre macro dans une UsF, je copie une ou plusieurs de ces
feuilles dans de nouveaux classeurs avec une boucle et
Sheets(nomfeuille).select
Sheets(nomfeuille).copy

aprés je selectionne le bouton de commande present sur la feuille avec
Activesheet.Shapes.selectAll

et je le supprime avec
Selection.cut

apres je ferme ce nouveau classeur en sauvegardant avec son nom.
Tous fonctionne mais comme il reste cette mini macro, à l'ouverture j'ai
une alerte.
C'est ces 3 lignes de code que je cherche à supprimer.
Merci pour ton aide.
Patrick


"LSteph" a écrit dans le message de news:

Bonjour,

un exemple type, mais il faut avoir fait confiance au projet vb dans
les param de sécurité des macros.

With ActiveWorkbook.VBProject.VBComponents(ActiveWorkbook.Sheets
("Fiche"). _
CodeName).CodeModule
.DeleteLines 1, .CountOfLines
.CodePane.Window.Close
End With

'lSteph

On 8 sep, 14:07, "PAN GOT" wrote:
Bonjour,
je crois avoir deja vu la question passée mais je ne la retrouve pas
dans
mes notes.
Dans une macro, je fait une copie d'une feuille dans un nouveau classeur
mais cette feuille contient quelques lignes de code que je voudrais
supprimer.
Si quelqu'un avait les quelques lignes de code qui vont bien.
D'avance, merci.
Patrick







Avatar
LSteph
Bonjour,

Existe-t-il un moyen de voir ou ce cache ce code ?
Oui dans VBE sur ta gauche doitapparaître l'explorateur de projet
développe celui correspondantà ton projet

Comme a dit MichDenis vérifie qu'il n'y a pas de Modules ni Userforms
en outre un codemodule est attaché à chaque autre type de
"vbcomponent" du classeur

Feuilles du classeur (doubleclic) pour faire apparaître à droite et
vider le contenu du CodeModule

Thisworkbook également.

A quoi correspond cette option de "faire confiance au projet VB" ?
En premier lieu de se préserver contre soi même mais surtout
pour le principe, bidouiller du code par du code peut être très lourd
de conséquences si c'est effectué sans précaution
et pire si un classeur de quelqu'un d'autre le fait à l'insu de ton
plein gré et efface ensuite lui même toute trace du forfait.

C'est suffisant à mon sens pour n'activer qu'en connaissance de cause
cette option.
Donc on peut le faire mais il faut garder toujours l'option de activer/
désactiver les macros
et ne pas laisser s'executer le code d'un classeur d'origine pas assez
connue, au besoin prendre le soin de contrôler ce contenu.
Si le projet est verrouillé n'ouvrir que ce dont on connait
pertinemment l'origine comme étant de confiance.

Cordialement.

--
lSteph


On 9 sep, 14:46, "PAN GOT" wrote:
Bonjour LSteph,

Excuse moi, mais je ne connaissais pas cette option.

Une fois cocher cette option, effectivement ça fonctionne bien.

Par contre je ne comprends pas très bien.

Quand j'ouvre le fichier ainsi créé, je n'ai plus ces lignes de code. Je n'ai
aucune ligne de code ni dans la feuille ni dans le classeur et pourtant,
Excel continu de me poser la question en m'indiquant que ce fichier conti ent
une macro ! ?????

Si manuellement, je supprime ce code avant la copie et je fais la même
manip, c'est a dire copie dans un autre classeur etc., je n'ai pas ce
message d'Excel.

Existe-t-il un moyen de voir ou ce cache ce code ?

A quoi correspond cette option de "faire confiance au projet VB" ?

D'avance, merci.

Patrick

"LSteph" a écrit dans le message de news:




> ;o)
> ..ok..je remets:

>  >>...mais il faut avoir fait confiance au projet vb dans
> >>les param de sécurité des macros.

> Menu Outils d'excel Macros Sécurité des Macros
> Onglet1 Niveau Moyen ou Faible
> Onglet 2 en bas Cocher
> Faire Confiance au projet Visual Basic

> PAN GOT a écrit :
>> Bonjour LSteph

>> j'obtiens un message d'erreur d'execution '1004' L'acces par programme au
>> projet Visual Basic n'est pas fiable.
>> Pour préciser mon probleme, voici ce que je fait.
>> Dans un classeur, j'ai des feuilles avec juste un bouton de commande q ui
>> me permet de lancer une macro genre "Run impression_dernier_indice".

>> Avec une autre macro dans une UsF, je copie une ou plusieurs de ces
>> feuilles dans de nouveaux classeurs avec une boucle et
>> Sheets(nomfeuille).select
>> Sheets(nomfeuille).copy

>> aprés je selectionne le bouton de commande present sur la feuille av ec
>> Activesheet.Shapes.selectAll

>> et je le supprime avec
>> Selection.cut

>> apres je ferme ce nouveau classeur en sauvegardant avec son nom.
>> Tous fonctionne mais comme il reste cette mini macro, à l'ouverture j'ai
>> une alerte.
>> C'est ces 3  lignes de code que je cherche à supprimer.
>> Merci pour ton aide.
>> Patrick

>> "LSteph" a écrit dans le message de news:
>>
>> Bonjour,

>> un exemple type, mais il faut avoir fait confiance au projet vb dans
>> les param de sécurité des macros.

>> With ActiveWorkbook.VBProject.VBComponents(ActiveWorkbook.Sheets
>> ("Fiche"). _
>>             CodeName).CodeModule
>>             .DeleteLines 1, .CountOfLines
>>             .CodePane.Window.Close
>>             End With

>> 'lSteph

>> On 8 sep, 14:07, "PAN GOT" wrote:
>>> Bonjour,
>>> je crois avoir deja vu la question passée mais je ne la retrouve pa s
>>> dans
>>> mes notes.
>>> Dans une macro, je fait une copie d'une feuille dans un nouveau class eur
>>> mais cette feuille contient quelques lignes de code que je voudrais
>>> supprimer.
>>> Si quelqu'un avait les quelques lignes de code qui vont bien.
>>> D'avance, merci.
>>> Patrick- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -


Avatar
PAN GOT
OK. je vois bien le danger.
Je vais modifier mon classeur pour eviter ça parce qu'il est utilisé par
plusieurs personnes et effectivement, je ne peux pas proceder de la sorte.
Merci à tous les deux.
Cordialement
Avatar
LSteph
Bonjour,

Tu pourras modifier ton classeur si tu veux , mais amha ce n'est pas un
pb du moment que tu as encadré ce qui devait se faire.

Le souci est de bien mettre dans la confidence et la confiance, les
utilisateurs de tes classeurs.

Exemple: on recoit de nouvelles machines sur certains postes
Manque de pot , le fournisseur n'a pas suivi les préconisations
demandées... par défaut la sécurité des macros est sur élevé...
Si l'utilisateur n'est pas averti ou que comme dans la plupart des cas ,
quand la machine lui affiche un message,il a tres tres peur et ne sais
subitement plus lire ce qui est écrit dans la fenêtre.
Il ne saura pas comment faire pour utiliser des classeurs contenant des
macros, car d'emblée elles auront été désactivées à l'ouverture.

Moralité: suffit de prévenir les personnes du parametrage de Outils
Macros sécurité, préalable à l'utilisation ou le cas échéant , la
personne chargée du parametrage des postes.

--
lSteph



PAN GOT a écrit :
OK. je vois bien le danger.
Je vais modifier mon classeur pour eviter ça parce qu'il est utilisé par
plusieurs personnes et effectivement, je ne peux pas proceder de la sorte.
Merci à tous les deux.
Cordialement




Avatar
PAN GOT
"LSteph" a écrit dans le message de news:
%
Bonjour,

Tu pourras modifier ton classeur si tu veux , mais amha ce n'est pas un pb
du moment que tu as encadré ce qui devait se faire.

Le souci est de bien mettre dans la confidence et la confiance, les
utilisateurs de tes classeurs.

Exemple: on recoit de nouvelles machines sur certains postes
Manque de pot , le fournisseur n'a pas suivi les préconisations
demandées... par défaut la sécurité des macros est sur élevé...
Si l'utilisateur n'est pas averti ou que comme dans la plupart des cas ,
quand la machine lui affiche un message,il a tres tres peur et ne sais
subitement plus lire ce qui est écrit dans la fenêtre.
Il ne saura pas comment faire pour utiliser des classeurs contenant des
macros, car d'emblée elles auront été désactivées à l'ouverture.

Moralité: suffit de prévenir les personnes du parametrage de Outils Macros
sécurité, préalable à l'utilisation ou le cas échéant , la personne
chargée du parametrage des postes.

--
lSteph



PAN GOT a écrit :
OK. je vois bien le danger.
Je vais modifier mon classeur pour eviter ça parce qu'il est utilisé par
plusieurs personnes et effectivement, je ne peux pas proceder de la
sorte.
Merci à tous les deux.
Cordialement