[VBA] Sauvegarder une copie sans les macros

Résolu
Elboubdelapampa Messages postés 153 Date d'inscription   Statut Membre Dernière intervention   -  
 jojo -
Bonjour,
J'ai un classeur Excel avec des macros. J'aimerais qu'à la fin du processus automatique, la macro sauvegarde une copie du fichier sans les macros.
Vu que j'ai des pages de graphique avec des liens, je ne peut pas me limiter à copier-coller les données dans d'autre classeurs.
Est ce que c'est possible de sauvegarder un classeur sans les macros?

Merci d'avance

2 réponses

  1. Elboubdelapampa Messages postés 153 Date d'inscription   Statut Membre Dernière intervention   7
     
    Merci, j'ai essayé, le Save as fonctionne bien, par contre à la ligne
    With ActiveWorkbook.VBProject, j'obtient le message d'erreur
    Laufzeitfehler '1004'
    Die Methode 'VBProject' für das Objekt '_Workbook' ist fehlgeschlagen

    Ce qui peut être traduit par:
    Erreur '1004'
    La méthode 'VBProject' pour l'objet '_Workbook' a échoué


    Une idée?
    1
    1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 772
       
      Essaye la solution de MichDenis
      Menu / outils / Macros / sécurité / Onglets Éditeurs approuvés /
      les 2 cases à cocher doivent être cochées.
      0
    2. Elboubdelapampa Messages postés 153 Date d'inscription   Statut Membre Dernière intervention   7
       
      C'était ça: seulement un seul était activé.
      Merci pour le temps que t'as pris, ça faisait un moment que je travaillais sur le problème.
      0
    3. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 772
       
      J'ai juste fait deux recherches google pour toi... Donc en gros cela ne m'a pris que quelques poignées de secondes. Le plus difficile était de trouver des réponses pouvant te satisfaire et pas le premier lien venui.
      Bon courage pour la suite et n'hésite pas à revenir
      0
    4. jojo
       
      bonsoir le forum! je demande de l'aide!
      je veux utiliser le code ci-dessus mais je ne m'en sors pas;
      je veux creer une copie de mon classeur et l'enrégistrer dans un repertoire ( sous un autre nom) en détruisant les macros; sans fermer mon classeur de travaille. le classeur destination doit etre fermer pour une autre personne. je veux en somme faire des enrégistrement de mon classeur sans les macros s
      1
  2. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 772
     
    Bonjour,
    Peut être une solution ici de Frédéric Sigonneau, Laurent Longre rien que ça!!!
    Le code :
    sub SaveAsWithoutMacros()
     Dim NomSource$, CheminDest$, NomDest$
     Dim VBC As Object
     
     NomSource = "EssaiSaveAs.xls"  'à adapter
     CheminDest = "C:\WindowsTemp" 'à adapter
     NomDest = "Essai.xls"      'à adapter
     
     Workbooks(NomSource).SaveAs CheminDest & NomDest
     
     With ActiveWorkbook.VBProject
     'cette partie du code est de Laurent Longre
      For Each VBC In .VBComponents
       If VBC.Type = 100 Then
        With VBC.CodeModule
         .DeleteLines 1, .CountOfLines
         .CodePane.Window.Close
        End With
       Else: .VBComponents.Remove VBC
       End If
      Next VBC 'LL
     End With
     
     Application.Quit
     SendKeys "%O"
     
     end sub
    0