Microsoft 365 exporter une feuille dans un nouveau fichier en valeur (sans liaisons)

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Lazz

XLDnaute Junior
Bonjour à tous,

J'ai trouvé un code pour dupliquer la feuille de mon classeur 1 dans un nouveaux classeur2. voici mon code :

Sub dupliquerFeuilleDansNouveauClasseur()
Dim nomFichier As String
nomFichier = ActiveWorkbook.Path & "\" & ActiveSheet.Name & Format(Now, "_yyyymmdd") & ".xlsx"

ActiveSheet.Copy
ActiveWorkbook.SaveAs nomFichier
End Sub

Cependant ma feuille contient des liaisons, des formules du classeur 1 et j'aimerai que mon classeur 2 ne contiennent pas de liaisons mais que des valeurs...


Pouvez-vous m'aider svp ??
 
Solution
Bonjour,

Peut-être sera-ce suffisant :
VB:
Sub dupliquerFeuilleDansNouveauClasseur()
Dim nomFichier As String
nomFichier = ActiveWorkbook.Path & "\" & ActiveSheet.Name & Format(Now, "_yyyymmdd") & ".xlsx"

ActiveSheet.Copy
' ActiveSheet = feuille active sur le classeur actif : nouveau classeur
ActiveSheet.UsedRange.Value = ActiveSheet.UsedRange.Value ' copie les valeurs
ActiveWorkbook.SaveAs nomFichier
End Sub

cordialement
Bon j'ai trouver toute seule ! Je vous met la solution au cas ou :

VB:
Sub dupliquerFeuilleDansNouveauClasseur()
    Dim nomFichier As String
    nomFichier = ActiveWorkbook.Path & "\" & ActiveSheet.Name & Format(Now, "_yyyymmdd") & ".xlsx"
    
    Set range1 = Range("A1:L56")
range1.Copy
Range("A1").Select
ActiveCell.PasteSpecial Paste:=xlPasteValues


    ActiveSheet.Copy
    ActiveWorkbook.SaveAs nomFichier
End Sub


Dans l'ordre, le premier permet de dupliquer une feuille d'un classeur A dans un nouveau classeur B en le renommant "nom de feuille_date" :

Code:
Sub dupliquerFeuilleDansNouveauClasseur()
    Dim nomFichier As String
    nomFichier = ActiveWorkbook.Path & "\" & ActiveSheet.Name & Format(Now, "_yyyymmdd") & ".xlsx"

Le second permet de copié collé en valeur et de garder la mise en forme :

Code:
Set range1 = Range("A1:L56")

range1.Copy

Range("A1").Select

ActiveCell.PasteSpecial Paste:=xlPasteValues
 
Bonjour,

Peut-être sera-ce suffisant :
VB:
Sub dupliquerFeuilleDansNouveauClasseur()
Dim nomFichier As String
nomFichier = ActiveWorkbook.Path & "\" & ActiveSheet.Name & Format(Now, "_yyyymmdd") & ".xlsx"

ActiveSheet.Copy
' ActiveSheet = feuille active sur le classeur actif : nouveau classeur
ActiveSheet.UsedRange.Value = ActiveSheet.UsedRange.Value ' copie les valeurs
ActiveWorkbook.SaveAs nomFichier
End Sub

cordialement
 
Bonjour,

Peut-être sera-ce suffisant :
VB:
Sub dupliquerFeuilleDansNouveauClasseur()
Dim nomFichier As String
nomFichier = ActiveWorkbook.Path & "\" & ActiveSheet.Name & Format(Now, "_yyyymmdd") & ".xlsx"

ActiveSheet.Copy
' ActiveSheet = feuille active sur le classeur actif : nouveau classeur
ActiveSheet.UsedRange.Value = ActiveSheet.UsedRange.Value ' copie les valeurs
ActiveWorkbook.SaveAs nomFichier
End Sub

cordialement
YESSS ça marche encore mieux merci beaucoup pour votre aide !
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
825
Retour