modifier un code pour qu'il enregistre que les valeurs d'une feuille sans formule

abousaad

XLDnaute Junior
Bonsoir à tous;
Pourriez vous m'aider à compléter ce code pour qu'il enregistre la feuil1 dans un nouveau classeur sans formules.
Merci d'avance.
Code:
Sub Archiver()
Dim ch As String
Dim num As String
Dim n As String
num = Sheets("MENU").Range("l8").Value
n = Sheets("MENU").Range("l6").Value
ch = ActiveWorkbook.Path
Sheets(Array("feuil1")).Copy
ActiveWorkbook.CheckCompatibility = False
ActiveWorkbook.SaveAs Filename:=ch & "\Archive\" & "archive" & "_" & num & "-" & n & ".xlsx", FileFormat:= _
xlOpenXMLWorkbook, Password:="", WriteResPassword:="", ReadOnlyRecommended:= _
False, CreateBackup:=False
End Sub
 

abousaad

XLDnaute Junior
Re : modifier un code pour qu'il enregistre que les valeurs d'une feuille sans formul

Bonsoir abousaad,

Essayez la manip suivante:

Insérez après la ligne:
Sheets(Array("feuil1")).Copy
la ligne:
ActiveSheet.UsedRange.Value = ActiveSheet.UsedRange.Value

Bonjour à tous
Merci mapomme pour la réponse;
ça marche bien votre ligne de code!
Comment l'adapter pour deux ou trois feuilles:
Code:
Sheets(Array("feuil1" , "feuil2" , "feuil3")).Copy
Merci d'avance
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : modifier un code pour qu'il enregistre que les valeurs d'une feuille sans formul

Bonjour abousaad,

Essayer ce code:
Code:
Sub Archiver()
Dim ch As String
Dim num As String
Dim n As String
Dim Feuille As Worksheet
  num = Sheets("MENU").Range("l8").Value
  n = Sheets("MENU").Range("l6").Value
  ch = ActiveWorkbook.Path
  Sheets(Array("feuil1", "feuil2", "feuil3")).Copy
  For Each Feuille In Sheets(Array("feuil1", "feuil2", "feuil3"))
        Feuille.UsedRange.Value = Feuille.UsedRange.Value
  Next Feuille
  ActiveWorkbook.CheckCompatibility = False
  ActiveWorkbook.SaveAs Filename:=ch & "\Archive\" & "archive" & "_" & num & "-" & n & ".xlsx", FileFormat:= _
  xlOpenXMLWorkbook, Password:="", WriteResPassword:="", ReadOnlyRecommended:= _
  False, CreateBackup:=False
End Sub
 

abousaad

XLDnaute Junior
Re : modifier un code pour qu'il enregistre que les valeurs d'une feuille sans formul

Bonjour abousaad,

Essayer ce code:
Code:
Sub Archiver()
Dim ch As String
Dim num As String
Dim n As String
Dim Feuille As Worksheet
  num = Sheets("MENU").Range("l8").Value
  n = Sheets("MENU").Range("l6").Value
  ch = ActiveWorkbook.Path
  Sheets(Array("feuil1", "feuil2", "feuil3")).Copy
  For Each Feuille In Sheets(Array("feuil1", "feuil2", "feuil3"))
        Feuille.UsedRange.Value = Feuille.UsedRange.Value
  Next Feuille
  ActiveWorkbook.CheckCompatibility = False
  ActiveWorkbook.SaveAs Filename:=ch & "\Archive\" & "archive" & "_" & num & "-" & n & ".xlsx", FileFormat:= _
  xlOpenXMLWorkbook, Password:="", WriteResPassword:="", ReadOnlyRecommended:= _
  False, CreateBackup:=False
End Sub

Bonsoir;
Merci infiniment pour votre aide.
 

Discussions similaires

Réponses
2
Affichages
293

Statistiques des forums

Discussions
312 321
Messages
2 087 251
Membres
103 497
dernier inscrit
FAHDE