Bonjour à tous,

Merci de prendre le temps de venir lire mon sujet, j'espère savoir expliquer le plus clairement possible mon problème. Je débute en macro et j'essaie de décoder ce qu'il se passe même si je ne suis pas encore trop à l'aise pour innover :p

J'ai un fichier xlsm forcément, avec des formules de recherche v, index,... Bref. Une macro Archiver présentée ci dessous, se charge "d'enregistrer sous" le document présent sous une forme xls. Il ne sauvegarde que l'onglet actif, et c'est bien normal. J'aimerai savoir s'il est, en théorie, possible de lui faire enregistrer la feuille avec l'affichage "actif/présent" des formules, et non pas la formule en elle même, ou le résultat sous forme d'erreur
=> Eh oui, s'il n'enregistre que le premier onglet, à l'ouverture du fichier xls il ne retrouve pas les sources demandées par les formules et affiche donc de belles erreurs de partout.

Je pense qu'il doit exister, tout comme pour la copie/colle une forme de collage "valeurs" ou texte, qui s'appliquerait sur une macro Pensez vous que c'est jouable? Si oui, je ne parviens pas à trouver comment exprimer correctement ma recherche :/ Je penserai bien à créer la macro méthode à l'arrache, en l'enregistrant manuellement => le copié/collé brut. Mais voila, c est trop brut et les lignes à copier coller peuvent différer en nombre.

Merci à vous pour votre aide !



Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Sub Archiver()
Dim extension As String
Dim chemin As String, nomfichier As String
Dim style As Integer
Application.ScreenUpdating = False
ThisWorkbook.ActiveSheet.Copy
extension = ".xls"
chemin = "C:\Users\lereuland\Desktop\"
nomfichier = ActiveSheet.Range("C9") & " " & Format(Date, "dd-mm") & extension
With ActiveWorkbook
    .ActiveSheet.DrawingObjects(1).Delete
    .SaveAs Filename:=chemin & nomfichier
    .Close
End With
End Sub