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

enregistrer sans code VBA

10 réponses
Avatar
Chris
Bonjour,
J'ai une base access qui me remplit une feuille Excel, cette dernière est
ensuite traitée par un autre service.
Ce service m'a demandé de modifier certaines choses dans le format de la
feuille, ce que j'ai fait par une macro, pour minimiser les manipulations
des opérateurs de la base de données.
Or, le post traitement des données de la feuille par l'autre service est
géné par mes macros.
Est-il possible, lors de l'enregistrement de la feuille excel (avant envoi
par un intranet) de l'enregistrer sous un autre nom, et de supprimer
également le code vba des macros.
je détaille un peu plus :
L'opérateur clique sur un bouton de la base access --> export vers Excel,
puis ouverture du fichier excel pour vérif
L'opérateur clique ensuite sur un bouton de la feuille excel --> Formatage
des données, mise en forme....enregistrement sous un autre nom
et pour cette dernière opération, je voudrais une action qui supprime mon
bouton et le code qui va avec dans le nouveau fichier
J'espère avoir été assez clair dans mes explications
Merci de votre aide

Chris

10 réponses

Avatar
jps
bonjour chris
cette macro supprime le code des modules présents dans un classeur

Sub EffaceCodeFeuille(NomFeuille As String)

With ActiveWorkbook.VBProject.VBComponents _

(ActiveWorkbook.Sheets(NomFeuille).CodeName).CodeModule

.DeleteLines 1, .CountOfLines

.CodePane.Window.Close

End With

End Sub

pour supprimer le bouton, un petit coup d'enregistreur de macros
HTH
jps

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

Bonjour,
J'ai une base access qui me remplit une feuille Excel, cette dernière est
ensuite traitée par un autre service.
Ce service m'a demandé de modifier certaines choses dans le format de la
feuille, ce que j'ai fait par une macro, pour minimiser les manipulations
des opérateurs de la base de données.
Or, le post traitement des données de la feuille par l'autre service est
géné par mes macros.
Est-il possible, lors de l'enregistrement de la feuille excel (avant envoi
par un intranet) de l'enregistrer sous un autre nom, et de supprimer
également le code vba des macros.
je détaille un peu plus :
L'opérateur clique sur un bouton de la base access --> export vers Excel,
puis ouverture du fichier excel pour vérif
L'opérateur clique ensuite sur un bouton de la feuille excel --> Formatage
des données, mise en forme....enregistrement sous un autre nom
et pour cette dernière opération, je voudrais une action qui supprime mon
bouton et le code qui va avec dans le nouveau fichier
J'espère avoir été assez clair dans mes explications
Merci de votre aide

Chris




Avatar
Chris
Bonjour et merci
lorsque j'essaye de lancer la macro, j'ai une boîte message qui me dit :
argument non facultatif
et là fin de l'execution
j'ai essayé en remplaçant NomFeuille par le nom de ma feuille (Feuil1)
Merci
"jps" a écrit dans le message de news:

bonjour chris
cette macro supprime le code des modules présents dans un classeur

Sub EffaceCodeFeuille(NomFeuille As String)

With ActiveWorkbook.VBProject.VBComponents _

(ActiveWorkbook.Sheets(NomFeuille).CodeName).CodeModule

.DeleteLines 1, .CountOfLines

.CodePane.Window.Close

End With

End Sub

pour supprimer le bouton, un petit coup d'enregistreur de macros
HTH
jps

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

Bonjour,
J'ai une base access qui me remplit une feuille Excel, cette dernière est
ensuite traitée par un autre service.
Ce service m'a demandé de modifier certaines choses dans le format de la
feuille, ce que j'ai fait par une macro, pour minimiser les manipulations
des opérateurs de la base de données.
Or, le post traitement des données de la feuille par l'autre service est
géné par mes macros.
Est-il possible, lors de l'enregistrement de la feuille excel (avant
envoi par un intranet) de l'enregistrer sous un autre nom, et de
supprimer également le code vba des macros.
je détaille un peu plus :
L'opérateur clique sur un bouton de la base access --> export vers Excel,
puis ouverture du fichier excel pour vérif
L'opérateur clique ensuite sur un bouton de la feuille excel -->
Formatage des données, mise en forme....enregistrement sous un autre nom
et pour cette dernière opération, je voudrais une action qui supprime mon
bouton et le code qui va avec dans le nouveau fichier
J'espère avoir été assez clair dans mes explications
Merci de votre aide

Chris







Avatar
jps
bonjour chris
essaie alors comme cela :

With ThisWorkbook.VBProject.VBComponents("feuil2").codemodule
.DeleteLines 1, .CountOfLines

End With

ce qui devrait supprimer le code de la feuille 2

quant à la proc ci-dessous, il doit falloir exécuter cela :

Sub PasDeQuartierPourLeModule()

EffaceCodeFeuille "nom de la feuille dont le code est a éliminer"

End Sub

désolé, je fais ce que je peux et comme on dit, je peux peu
jps

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

Bonjour et merci
lorsque j'essaye de lancer la macro, j'ai une boîte message qui me dit :
argument non facultatif
et là fin de l'execution
j'ai essayé en remplaçant NomFeuille par le nom de ma feuille (Feuil1)
Merci
"jps" a écrit dans le message de news:

bonjour chris
cette macro supprime le code des modules présents dans un classeur

Sub EffaceCodeFeuille(NomFeuille As String)

With ActiveWorkbook.VBProject.VBComponents _

(ActiveWorkbook.Sheets(NomFeuille).CodeName).CodeModule

.DeleteLines 1, .CountOfLines

.CodePane.Window.Close

End With

End Sub

pour supprimer le bouton, un petit coup d'enregistreur de macros
HTH
jps

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

Bonjour,
J'ai une base access qui me remplit une feuille Excel, cette dernière
est ensuite traitée par un autre service.
Ce service m'a demandé de modifier certaines choses dans le format de la
feuille, ce que j'ai fait par une macro, pour minimiser les
manipulations des opérateurs de la base de données.
Or, le post traitement des données de la feuille par l'autre service est
géné par mes macros.
Est-il possible, lors de l'enregistrement de la feuille excel (avant
envoi par un intranet) de l'enregistrer sous un autre nom, et de
supprimer également le code vba des macros.
je détaille un peu plus :
L'opérateur clique sur un bouton de la base access --> export vers
Excel, puis ouverture du fichier excel pour vérif
L'opérateur clique ensuite sur un bouton de la feuille excel -->
Formatage des données, mise en forme....enregistrement sous un autre nom
et pour cette dernière opération, je voudrais une action qui supprime
mon bouton et le code qui va avec dans le nouveau fichier
J'espère avoir été assez clair dans mes explications
Merci de votre aide

Chris











Avatar
Chris
Re
j'avais oublié en fait de mettre le nom de la feuille quand j'appelais le
code
Merci pour ton aide.

Dernière question, pourquoi, lorsque je veux ouvrir mon fichier Excel
débarrassé de toute macro, Execl me demande-t-il si je veux activer les
macros? (alors qu'il n'y en a plus logiquement)
Merci
chris

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

bonjour chris
essaie alors comme cela :

With ThisWorkbook.VBProject.VBComponents("feuil2").codemodule
.DeleteLines 1, .CountOfLines

End With

ce qui devrait supprimer le code de la feuille 2

quant à la proc ci-dessous, il doit falloir exécuter cela :

Sub PasDeQuartierPourLeModule()

EffaceCodeFeuille "nom de la feuille dont le code est a éliminer"

End Sub

désolé, je fais ce que je peux et comme on dit, je peux peu
jps

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

Bonjour et merci
lorsque j'essaye de lancer la macro, j'ai une boîte message qui me dit :
argument non facultatif
et là fin de l'execution
j'ai essayé en remplaçant NomFeuille par le nom de ma feuille (Feuil1)
Merci
"jps" a écrit dans le message de news:

bonjour chris
cette macro supprime le code des modules présents dans un classeur

Sub EffaceCodeFeuille(NomFeuille As String)

With ActiveWorkbook.VBProject.VBComponents _

(ActiveWorkbook.Sheets(NomFeuille).CodeName).CodeModule

.DeleteLines 1, .CountOfLines

.CodePane.Window.Close

End With

End Sub

pour supprimer le bouton, un petit coup d'enregistreur de macros
HTH
jps

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

Bonjour,
J'ai une base access qui me remplit une feuille Excel, cette dernière
est ensuite traitée par un autre service.
Ce service m'a demandé de modifier certaines choses dans le format de
la feuille, ce que j'ai fait par une macro, pour minimiser les
manipulations des opérateurs de la base de données.
Or, le post traitement des données de la feuille par l'autre service
est géné par mes macros.
Est-il possible, lors de l'enregistrement de la feuille excel (avant
envoi par un intranet) de l'enregistrer sous un autre nom, et de
supprimer également le code vba des macros.
je détaille un peu plus :
L'opérateur clique sur un bouton de la base access --> export vers
Excel, puis ouverture du fichier excel pour vérif
L'opérateur clique ensuite sur un bouton de la feuille excel -->
Formatage des données, mise en forme....enregistrement sous un autre
nom
et pour cette dernière opération, je voudrais une action qui supprime
mon bouton et le code qui va avec dans le nouveau fichier
J'espère avoir été assez clair dans mes explications
Merci de votre aide

Chris














Avatar
MichDenis
En plus du code, tu dois supprimer les modules, formulaires si présent.



"Chris" a écrit dans le message de news:
%
Re
j'avais oublié en fait de mettre le nom de la feuille quand j'appelais le
code
Merci pour ton aide.

Dernière question, pourquoi, lorsque je veux ouvrir mon fichier Excel
débarrassé de toute macro, Execl me demande-t-il si je veux activer les
macros? (alors qu'il n'y en a plus logiquement)
Merci
chris

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

bonjour chris
essaie alors comme cela :

With ThisWorkbook.VBProject.VBComponents("feuil2").codemodule
.DeleteLines 1, .CountOfLines

End With

ce qui devrait supprimer le code de la feuille 2

quant à la proc ci-dessous, il doit falloir exécuter cela :

Sub PasDeQuartierPourLeModule()

EffaceCodeFeuille "nom de la feuille dont le code est a éliminer"

End Sub

désolé, je fais ce que je peux et comme on dit, je peux peu
jps

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

Bonjour et merci
lorsque j'essaye de lancer la macro, j'ai une boîte message qui me dit :
argument non facultatif
et là fin de l'execution
j'ai essayé en remplaçant NomFeuille par le nom de ma feuille (Feuil1)
Merci
"jps" a écrit dans le message de news:

bonjour chris
cette macro supprime le code des modules présents dans un classeur

Sub EffaceCodeFeuille(NomFeuille As String)

With ActiveWorkbook.VBProject.VBComponents _

(ActiveWorkbook.Sheets(NomFeuille).CodeName).CodeModule

.DeleteLines 1, .CountOfLines

.CodePane.Window.Close

End With

End Sub

pour supprimer le bouton, un petit coup d'enregistreur de macros
HTH
jps

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

Bonjour,
J'ai une base access qui me remplit une feuille Excel, cette dernière
est ensuite traitée par un autre service.
Ce service m'a demandé de modifier certaines choses dans le format de
la feuille, ce que j'ai fait par une macro, pour minimiser les
manipulations des opérateurs de la base de données.
Or, le post traitement des données de la feuille par l'autre service
est géné par mes macros.
Est-il possible, lors de l'enregistrement de la feuille excel (avant
envoi par un intranet) de l'enregistrer sous un autre nom, et de
supprimer également le code vba des macros.
je détaille un peu plus :
L'opérateur clique sur un bouton de la base access --> export vers
Excel, puis ouverture du fichier excel pour vérif
L'opérateur clique ensuite sur un bouton de la feuille excel -->
Formatage des données, mise en forme....enregistrement sous un autre
nom
et pour cette dernière opération, je voudrais une action qui supprime
mon bouton et le code qui va avec dans le nouveau fichier
J'espère avoir été assez clair dans mes explications
Merci de votre aide

Chris














Avatar
Chris
Bonjour
je n'ai pas de modules, l'execution supprime bien tout le code, dans VBA
j'ai Microsoft Excel Objects, puis en dessous "Feuill1" où est mis mon code
et "This Workbook" qui est vide
mon code est bien supprimé dans "Feuill1"
alors tout focnctionne correctement avec Excel200, Excel 97 mais avec 2003,
j'ai cette erreur :
"L'accès par programme au projet Visual Basic n'est pas fiable"
apparement c'est ceci qui gène:
With ThisWorkbook.VBProject.VBComponents("feuil2").codemodule
.DeleteLines 1, .CountOfLines

End With



que dois-je faire?

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

En plus du code, tu dois supprimer les modules, formulaires si présent.



"Chris" a écrit dans le message de news:
%
Re
j'avais oublié en fait de mettre le nom de la feuille quand j'appelais le
code
Merci pour ton aide.

Dernière question, pourquoi, lorsque je veux ouvrir mon fichier Excel
débarrassé de toute macro, Execl me demande-t-il si je veux activer les
macros? (alors qu'il n'y en a plus logiquement)
Merci
chris

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

bonjour chris
essaie alors comme cela :

With ThisWorkbook.VBProject.VBComponents("feuil2").codemodule
.DeleteLines 1, .CountOfLines

End With

ce qui devrait supprimer le code de la feuille 2

quant à la proc ci-dessous, il doit falloir exécuter cela :

Sub PasDeQuartierPourLeModule()

EffaceCodeFeuille "nom de la feuille dont le code est a éliminer"

End Sub

désolé, je fais ce que je peux et comme on dit, je peux peu
jps

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

Bonjour et merci
lorsque j'essaye de lancer la macro, j'ai une boîte message qui me dit :
argument non facultatif
et là fin de l'execution
j'ai essayé en remplaçant NomFeuille par le nom de ma feuille (Feuil1)
Merci
"jps" a écrit dans le message de news:

bonjour chris
cette macro supprime le code des modules présents dans un classeur

Sub EffaceCodeFeuille(NomFeuille As String)

With ActiveWorkbook.VBProject.VBComponents _

(ActiveWorkbook.Sheets(NomFeuille).CodeName).CodeModule

.DeleteLines 1, .CountOfLines

.CodePane.Window.Close

End With

End Sub

pour supprimer le bouton, un petit coup d'enregistreur de macros
HTH
jps

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

Bonjour,
J'ai une base access qui me remplit une feuille Excel, cette dernière
est ensuite traitée par un autre service.
Ce service m'a demandé de modifier certaines choses dans le format de
la feuille, ce que j'ai fait par une macro, pour minimiser les
manipulations des opérateurs de la base de données.
Or, le post traitement des données de la feuille par l'autre service
est géné par mes macros.
Est-il possible, lors de l'enregistrement de la feuille excel (avant
envoi par un intranet) de l'enregistrer sous un autre nom, et de
supprimer également le code vba des macros.
je détaille un peu plus :
L'opérateur clique sur un bouton de la base access --> export vers
Excel, puis ouverture du fichier excel pour vérif
L'opérateur clique ensuite sur un bouton de la feuille excel -->
Formatage des données, mise en forme....enregistrement sous un autre
nom
et pour cette dernière opération, je voudrais une action qui supprime
mon bouton et le code qui va avec dans le nouveau fichier
J'espère avoir été assez clair dans mes explications
Merci de votre aide

Chris



















Avatar
Chris
Re
Un autre petit soucis, lorsque j'ai envoyé ce fichier aux autres opérateurs,
qui utilisent Excel 2000,
lorsqu'ils cliquent sur le bouton, la macro s'execute, mais Excel se plante
en affichant une fenètre "Excel.exe a provoqué une erreur...etc.." et ils
n'ont d'autre choix que de fermer
Bizarre....

Merci


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

Bonjour
je n'ai pas de modules, l'execution supprime bien tout le code, dans VBA
j'ai Microsoft Excel Objects, puis en dessous "Feuill1" où est mis mon
code et "This Workbook" qui est vide
mon code est bien supprimé dans "Feuill1"
alors tout focnctionne correctement avec Excel200, Excel 97 mais avec
2003, j'ai cette erreur :
"L'accès par programme au projet Visual Basic n'est pas fiable"
apparement c'est ceci qui gène:
With ThisWorkbook.VBProject.VBComponents("feuil2").codemodule
.DeleteLines 1, .CountOfLines

End With



que dois-je faire?

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

En plus du code, tu dois supprimer les modules, formulaires si présent.



"Chris" a écrit dans le message de news:
%
Re
j'avais oublié en fait de mettre le nom de la feuille quand j'appelais le
code
Merci pour ton aide.

Dernière question, pourquoi, lorsque je veux ouvrir mon fichier Excel
débarrassé de toute macro, Execl me demande-t-il si je veux activer les
macros? (alors qu'il n'y en a plus logiquement)
Merci
chris

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

bonjour chris
essaie alors comme cela :

With ThisWorkbook.VBProject.VBComponents("feuil2").codemodule
.DeleteLines 1, .CountOfLines

End With

ce qui devrait supprimer le code de la feuille 2

quant à la proc ci-dessous, il doit falloir exécuter cela :

Sub PasDeQuartierPourLeModule()

EffaceCodeFeuille "nom de la feuille dont le code est a éliminer"

End Sub

désolé, je fais ce que je peux et comme on dit, je peux peu
jps

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

Bonjour et merci
lorsque j'essaye de lancer la macro, j'ai une boîte message qui me dit
:
argument non facultatif
et là fin de l'execution
j'ai essayé en remplaçant NomFeuille par le nom de ma feuille (Feuil1)
Merci
"jps" a écrit dans le message de news:

bonjour chris
cette macro supprime le code des modules présents dans un classeur

Sub EffaceCodeFeuille(NomFeuille As String)

With ActiveWorkbook.VBProject.VBComponents _

(ActiveWorkbook.Sheets(NomFeuille).CodeName).CodeModule

.DeleteLines 1, .CountOfLines

.CodePane.Window.Close

End With

End Sub

pour supprimer le bouton, un petit coup d'enregistreur de macros
HTH
jps

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

Bonjour,
J'ai une base access qui me remplit une feuille Excel, cette dernière
est ensuite traitée par un autre service.
Ce service m'a demandé de modifier certaines choses dans le format de
la feuille, ce que j'ai fait par une macro, pour minimiser les
manipulations des opérateurs de la base de données.
Or, le post traitement des données de la feuille par l'autre service
est géné par mes macros.
Est-il possible, lors de l'enregistrement de la feuille excel (avant
envoi par un intranet) de l'enregistrer sous un autre nom, et de
supprimer également le code vba des macros.
je détaille un peu plus :
L'opérateur clique sur un bouton de la base access --> export vers
Excel, puis ouverture du fichier excel pour vérif
L'opérateur clique ensuite sur un bouton de la feuille excel -->
Formatage des données, mise en forme....enregistrement sous un autre
nom
et pour cette dernière opération, je voudrais une action qui supprime
mon bouton et le code qui va avec dans le nouveau fichier
J'espère avoir été assez clair dans mes explications
Merci de votre aide

Chris























Avatar
MichDenis
| "L'accès par programme au projet Visual Basic n'est pas fiable"

Version excel 2003, tu dois cocher la case suivante :
Barre des menus / outils / Macro / sécurité / Éditeurs approuvés / les 2 cases à cocher dans le bas
de la fenêtre.



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

Bonjour
je n'ai pas de modules, l'execution supprime bien tout le code, dans VBA
j'ai Microsoft Excel Objects, puis en dessous "Feuill1" où est mis mon code
et "This Workbook" qui est vide
mon code est bien supprimé dans "Feuill1"
alors tout focnctionne correctement avec Excel200, Excel 97 mais avec 2003,
j'ai cette erreur :
"L'accès par programme au projet Visual Basic n'est pas fiable"
apparement c'est ceci qui gène:
With ThisWorkbook.VBProject.VBComponents("feuil2").codemodule
.DeleteLines 1, .CountOfLines

End With



que dois-je faire?

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

En plus du code, tu dois supprimer les modules, formulaires si présent.



"Chris" a écrit dans le message de news:
%
Re
j'avais oublié en fait de mettre le nom de la feuille quand j'appelais le
code
Merci pour ton aide.

Dernière question, pourquoi, lorsque je veux ouvrir mon fichier Excel
débarrassé de toute macro, Execl me demande-t-il si je veux activer les
macros? (alors qu'il n'y en a plus logiquement)
Merci
chris

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

bonjour chris
essaie alors comme cela :

With ThisWorkbook.VBProject.VBComponents("feuil2").codemodule
.DeleteLines 1, .CountOfLines

End With

ce qui devrait supprimer le code de la feuille 2

quant à la proc ci-dessous, il doit falloir exécuter cela :

Sub PasDeQuartierPourLeModule()

EffaceCodeFeuille "nom de la feuille dont le code est a éliminer"

End Sub

désolé, je fais ce que je peux et comme on dit, je peux peu
jps

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

Bonjour et merci
lorsque j'essaye de lancer la macro, j'ai une boîte message qui me dit :
argument non facultatif
et là fin de l'execution
j'ai essayé en remplaçant NomFeuille par le nom de ma feuille (Feuil1)
Merci
"jps" a écrit dans le message de news:

bonjour chris
cette macro supprime le code des modules présents dans un classeur

Sub EffaceCodeFeuille(NomFeuille As String)

With ActiveWorkbook.VBProject.VBComponents _

(ActiveWorkbook.Sheets(NomFeuille).CodeName).CodeModule

.DeleteLines 1, .CountOfLines

.CodePane.Window.Close

End With

End Sub

pour supprimer le bouton, un petit coup d'enregistreur de macros
HTH
jps

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

Bonjour,
J'ai une base access qui me remplit une feuille Excel, cette dernière
est ensuite traitée par un autre service.
Ce service m'a demandé de modifier certaines choses dans le format de
la feuille, ce que j'ai fait par une macro, pour minimiser les
manipulations des opérateurs de la base de données.
Or, le post traitement des données de la feuille par l'autre service
est géné par mes macros.
Est-il possible, lors de l'enregistrement de la feuille excel (avant
envoi par un intranet) de l'enregistrer sous un autre nom, et de
supprimer également le code vba des macros.
je détaille un peu plus :
L'opérateur clique sur un bouton de la base access --> export vers
Excel, puis ouverture du fichier excel pour vérif
L'opérateur clique ensuite sur un bouton de la feuille excel -->
Formatage des données, mise en forme....enregistrement sous un autre
nom
et pour cette dernière opération, je voudrais une action qui supprime
mon bouton et le code qui va avec dans le nouveau fichier
J'espère avoir été assez clair dans mes explications
Merci de votre aide

Chris



















Avatar
MichDenis
| With ThisWorkbook.VBProject.VBComponents("feuil2").codemodule
| .DeleteLines 1, .CountOfLines
|
| End With

Ce type de code fonctionne très bien avec Excel 2000

As-tu essayé d'enregistrer une version de ton fichier en utilisant dans la boîte
enregistrer sous, boîte déroulante : Type de ficihiers : Excel 97 -2000 ou
quelque chose du genre ?





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

Re
Un autre petit soucis, lorsque j'ai envoyé ce fichier aux autres opérateurs,
qui utilisent Excel 2000,
lorsqu'ils cliquent sur le bouton, la macro s'execute, mais Excel se plante
en affichant une fenètre "Excel.exe a provoqué une erreur...etc.." et ils
n'ont d'autre choix que de fermer
Bizarre....

Merci


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

Bonjour
je n'ai pas de modules, l'execution supprime bien tout le code, dans VBA
j'ai Microsoft Excel Objects, puis en dessous "Feuill1" où est mis mon
code et "This Workbook" qui est vide
mon code est bien supprimé dans "Feuill1"
alors tout focnctionne correctement avec Excel200, Excel 97 mais avec
2003, j'ai cette erreur :
"L'accès par programme au projet Visual Basic n'est pas fiable"
apparement c'est ceci qui gène:
With ThisWorkbook.VBProject.VBComponents("feuil2").codemodule
.DeleteLines 1, .CountOfLines

End With



que dois-je faire?

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

En plus du code, tu dois supprimer les modules, formulaires si présent.



"Chris" a écrit dans le message de news:
%
Re
j'avais oublié en fait de mettre le nom de la feuille quand j'appelais le
code
Merci pour ton aide.

Dernière question, pourquoi, lorsque je veux ouvrir mon fichier Excel
débarrassé de toute macro, Execl me demande-t-il si je veux activer les
macros? (alors qu'il n'y en a plus logiquement)
Merci
chris

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

bonjour chris
essaie alors comme cela :

With ThisWorkbook.VBProject.VBComponents("feuil2").codemodule
.DeleteLines 1, .CountOfLines

End With

ce qui devrait supprimer le code de la feuille 2

quant à la proc ci-dessous, il doit falloir exécuter cela :

Sub PasDeQuartierPourLeModule()

EffaceCodeFeuille "nom de la feuille dont le code est a éliminer"

End Sub

désolé, je fais ce que je peux et comme on dit, je peux peu
jps

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

Bonjour et merci
lorsque j'essaye de lancer la macro, j'ai une boîte message qui me dit
:
argument non facultatif
et là fin de l'execution
j'ai essayé en remplaçant NomFeuille par le nom de ma feuille (Feuil1)
Merci
"jps" a écrit dans le message de news:

bonjour chris
cette macro supprime le code des modules présents dans un classeur

Sub EffaceCodeFeuille(NomFeuille As String)

With ActiveWorkbook.VBProject.VBComponents _

(ActiveWorkbook.Sheets(NomFeuille).CodeName).CodeModule

.DeleteLines 1, .CountOfLines

.CodePane.Window.Close

End With

End Sub

pour supprimer le bouton, un petit coup d'enregistreur de macros
HTH
jps

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

Bonjour,
J'ai une base access qui me remplit une feuille Excel, cette dernière
est ensuite traitée par un autre service.
Ce service m'a demandé de modifier certaines choses dans le format de
la feuille, ce que j'ai fait par une macro, pour minimiser les
manipulations des opérateurs de la base de données.
Or, le post traitement des données de la feuille par l'autre service
est géné par mes macros.
Est-il possible, lors de l'enregistrement de la feuille excel (avant
envoi par un intranet) de l'enregistrer sous un autre nom, et de
supprimer également le code vba des macros.
je détaille un peu plus :
L'opérateur clique sur un bouton de la base access --> export vers
Excel, puis ouverture du fichier excel pour vérif
L'opérateur clique ensuite sur un bouton de la feuille excel -->
Formatage des données, mise en forme....enregistrement sous un autre
nom
et pour cette dernière opération, je voudrais une action qui supprime
mon bouton et le code qui va avec dans le nouveau fichier
J'espère avoir été assez clair dans mes explications
Merci de votre aide

Chris























Avatar
Chris
ok pour ça c'est règlé, merci
pour le reste, je vais essayer d'enregistrer sour un autre format
pour info, j'ai 3 machines avec 3 versions différentes 97/2000/2003 et chez
moi pas de soucis, les autres opérateurs
ont 2000 et chez eux cela fait planter Excel.
donc, je vais essayer d'enregistrer sous un autre format
je vous tiens au courant
merci
"MichDenis" a écrit dans le message de news:
uuw%
| "L'accès par programme au projet Visual Basic n'est pas fiable"

Version excel 2003, tu dois cocher la case suivante :
Barre des menus / outils / Macro / sécurité / Éditeurs approuvés / les 2
cases à cocher dans le bas
de la fenêtre.



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

Bonjour
je n'ai pas de modules, l'execution supprime bien tout le code, dans VBA
j'ai Microsoft Excel Objects, puis en dessous "Feuill1" où est mis mon
code
et "This Workbook" qui est vide
mon code est bien supprimé dans "Feuill1"
alors tout focnctionne correctement avec Excel200, Excel 97 mais avec
2003,
j'ai cette erreur :
"L'accès par programme au projet Visual Basic n'est pas fiable"
apparement c'est ceci qui gène:
With ThisWorkbook.VBProject.VBComponents("feuil2").codemodule
.DeleteLines 1, .CountOfLines

End With



que dois-je faire?

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

En plus du code, tu dois supprimer les modules, formulaires si présent.



"Chris" a écrit dans le message de news:
%
Re
j'avais oublié en fait de mettre le nom de la feuille quand j'appelais le
code
Merci pour ton aide.

Dernière question, pourquoi, lorsque je veux ouvrir mon fichier Excel
débarrassé de toute macro, Execl me demande-t-il si je veux activer les
macros? (alors qu'il n'y en a plus logiquement)
Merci
chris

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

bonjour chris
essaie alors comme cela :

With ThisWorkbook.VBProject.VBComponents("feuil2").codemodule
.DeleteLines 1, .CountOfLines

End With

ce qui devrait supprimer le code de la feuille 2

quant à la proc ci-dessous, il doit falloir exécuter cela :

Sub PasDeQuartierPourLeModule()

EffaceCodeFeuille "nom de la feuille dont le code est a éliminer"

End Sub

désolé, je fais ce que je peux et comme on dit, je peux peu
jps

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

Bonjour et merci
lorsque j'essaye de lancer la macro, j'ai une boîte message qui me dit
:
argument non facultatif
et là fin de l'execution
j'ai essayé en remplaçant NomFeuille par le nom de ma feuille (Feuil1)
Merci
"jps" a écrit dans le message de news:

bonjour chris
cette macro supprime le code des modules présents dans un classeur

Sub EffaceCodeFeuille(NomFeuille As String)

With ActiveWorkbook.VBProject.VBComponents _

(ActiveWorkbook.Sheets(NomFeuille).CodeName).CodeModule

.DeleteLines 1, .CountOfLines

.CodePane.Window.Close

End With

End Sub

pour supprimer le bouton, un petit coup d'enregistreur de macros
HTH
jps

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

Bonjour,
J'ai une base access qui me remplit une feuille Excel, cette dernière
est ensuite traitée par un autre service.
Ce service m'a demandé de modifier certaines choses dans le format de
la feuille, ce que j'ai fait par une macro, pour minimiser les
manipulations des opérateurs de la base de données.
Or, le post traitement des données de la feuille par l'autre service
est géné par mes macros.
Est-il possible, lors de l'enregistrement de la feuille excel (avant
envoi par un intranet) de l'enregistrer sous un autre nom, et de
supprimer également le code vba des macros.
je détaille un peu plus :
L'opérateur clique sur un bouton de la base access --> export vers
Excel, puis ouverture du fichier excel pour vérif
L'opérateur clique ensuite sur un bouton de la feuille excel -->
Formatage des données, mise en forme....enregistrement sous un autre
nom
et pour cette dernière opération, je voudrais une action qui supprime
mon bouton et le code qui va avec dans le nouveau fichier
J'espère avoir été assez clair dans mes explications
Merci de votre aide

Chris