Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Copie de plusieurs feuilles (juste les valeurs) dans un classeur pour chacune.

Xipotera

XLDnaute Nouveau
Bonjour, grâce à la macro suivante, je copie l'ensemble des feuilles de mon classeur dans un classeur par feuille. Jusqu'ici tout va bien, par contre j'aimerais ne copier que les valeurs de ces feuilles et non les formules.

Code:
Sub CopieFeuille()

For Each sh In ActiveWorkbook.Sheets

  sh.Copy
  ActiveWorkbook.SaveAs "X:\00-Databases\" & sh.Name
  ActiveWorkbook.Close
Next


End Sub
 

Pierrot93

XLDnaute Barbatruc
Re : Copie de plusieurs feuilles (juste les valeurs) dans un classeur pour chacune.

Bonjour,

essaye peut être ainsi :
Code:
For Each sh In ActiveWorkbook.Sheets
  sh.Copy
  ActiveSheet.UsedRange.Value = ActiveSheet.UsedRange.Value
  ActiveWorkbook.SaveAs "X:\00-Databases\" & sh.Name
  ActiveWorkbook.Close
Next

bonne journée
@+
 

Dranreb

XLDnaute Barbatruc
Re : Copie de plusieurs feuilles (juste les valeurs) dans un classeur pour chacune.

Bonjour
Un essai:
Juste après sh.Copy:
VB:
ActiveSheet.Cells.value = sh.Cells.value
À +

Bonjour Pierrot93
 

Xipotera

XLDnaute Nouveau
Re : Copie de plusieurs feuilles (juste les valeurs) dans un classeur pour chacune.

Merci à tous les deux pour vos réponses rapides.

la solution de Pierrot93 fonctionne nikel et est super rapide voire instantanée. par contre celle de Dranreb est beaucoup plus longue. Quoiqu'il en soit encore merci de vous etre penché sur mon problème.

Cordialement
 

Pierrot93

XLDnaute Barbatruc
Re : Copie de plusieurs feuilles (juste les valeurs) dans un classeur pour chacune.

Re, bonjour Bernard

oui, normal "usedrange" n'agit que sur la plage de cellules utilisées, alors qu'avec la propriété "cells" toutes les cellules de la feuilles de calcul sont traitées....
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…