OVH Cloud OVH Cloud

Sauvegarder et figer des valeurs liées à des macros

2 réponses
Avatar
jcquirin
Bonjour,

J'ai besoin de transmettre un fichier xls contenant des valeurs calculées
par des macros. Je souhaiterais ne pas envoyer avec ce fichier les macros. Je
veux juste sauvegarder le fichier, figer les valeurs, afin qu'il puisse être
lu et réutilisé tel quel sans les macros.

Merci

2 réponses

Avatar
FxM
Bonsoir,

Chez Frédéric pour la suppression du code, à faire précéder par un
copier -collage spécial (valeurs) de toutes les feuilles.

@+
FxM

Attribute VB_Name = "SaveAsSansLesMacros"
'enregistrer un classeur sous un autre nom,
'en le vidant au passage de son code
'fs, mpfe

Sub SaveAsWithoutMacros()
Dim NomSource$, CheminDest$, NomDest$
Dim VBC As Object

NomSource = "EssaiSaveAs.xls"
CheminDest = "C:WindowsTemp"
NomDest = "Essai.xls"

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
End With

Application.Quit
SendKeys "%O"

End Sub


Bonjour,

J'ai besoin de transmettre un fichier xls contenant des valeurs calculées
par des macros. Je souhaiterais ne pas envoyer avec ce fichier les macros. Je
veux juste sauvegarder le fichier, figer les valeurs, afin qu'il puisse être
lu et réutilisé tel quel sans les macros.

Merci


Avatar
M41
Bonsoir

J'ai eu le même problème. Ma solution : disposer d'une macro spéciale de
"sortie d'état" :

- création d'un nouveau document dit "d'état" dans Excel avec le nombre de
feuilles requises
- les feuilles du document d'état distribué ont les mêmes noms que les
feuilles du document calculs d'origine
- faire un collage spécial (texte + présentation) du document calculs vers
le document état
- sauvegarder le document état sous le même nom que le document calculs mais
encadré :
par un préfixe (genre "ETAT_")
et une terminaison complémentaire chiffrée date-heure (type:
"_jjmmaahhmmss")

Autres possibilités :

1/Il n'y a aucune macro dans les code des feuilles (cf éditeur VBA)
On exporte avant destruction les macros et userforms vers une bibliothèque
perso de superfonctions
On les importe pour une nouvelle application

2/On met les macros que l'on appele, dans un autre classeur ouvert
simultanément : cette méthode permet
aussi d'avoir des données personnels utilisées par ces macros et qui ne
seront pas transmises : des macros
d'appels seront intégrées dans le fichier transmis mais un "on error..."
évitera un plantage chez l'utilisateur
final destinataire du document "état"

Cordialement

M41


"" a
écrit dans le message de news:

Bonjour,

J'ai besoin de transmettre un fichier xls contenant des valeurs calculées
par des macros. Je souhaiterais ne pas envoyer avec ce fichier les macros.
Je
veux juste sauvegarder le fichier, figer les valeurs, afin qu'il puisse
être
lu et réutilisé tel quel sans les macros.

Merci