Sauvegarde une seule feuille en copie des valeurs seulement

Engue

XLDnaute Nouveau
Bonjour,

Je veux créer une macro pour sauvegarder UNIQUEMENT une feuille dans un nouveau classeur qui ne doit contenir qu'une seule feuille.
Je veux copier uniquement les valeurs puisque quand je copie j'ai les formules et ça appelle l'ancien classeur qui lui se modifie chaque jour.

Par ailleurs j'aimerais sauvegarder cette feuille dans des dossiers précis:
Code:
APH = Environ("UserName")
chemin  = "C:\Documents and Settings\" & APH & "\Mes Documents\TDB\2012\Janvier\" & nom & ".xls"
En fonction de la date extraire l'année et le mois puis tester si le dossier existe, s'il n'existe pas, le créer.
ex: si la date est le 03/01/2012
Si le dossier *2012\Janvier\ existe alors sauver dedans sinon le créer.

Je ne sais pas comment tester l'existence d'un fichier.

Merci à vous.
 

Engue

XLDnaute Nouveau
Re : Sauvegarde une seule feuille en copie des valeurs seulement

Finalement j'ai utilisé ce code:
Code:
Sub Save()
Feuil12.Select
ActiveSheet.Copy
    Application.Dialogs(xlDialogSaveAs).Show
End Sub

Mais j'aimerais copier les valeurs et non pas les formules, comment faire ?
 

Kobaya

XLDnaute Occasionnel
Re : Sauvegarde une seule feuille en copie des valeurs seulement

Bonsoir Engue,

Avant la sauvegarde, il suffit de faire :
Code:
    ActiveSheet.Cells.Copy
    ActiveSheet.Cells.PasteSpecial xlPasteValues
    Application.CutCopyMode = False
 

Engue

XLDnaute Nouveau
Re : Sauvegarde une seule feuille en copie des valeurs seulement

Code:
Sub Enregisddatrer()
Feuil12.Select
  ActiveSheet.Cells.Copy
ActiveSheet.Cells.PasteSpecial xlPasteValues
    Application.Dialogs(xlDialogSaveAs).Show
    ActiveWorkbook.Close
End Sub

Voilà le code, malheureusement ça me copie toutes les feuilles et je ne veux que la feuille 12.. alors que mon code qui est pareil me copie uniquement la feuille 12, je suis un peu perdu..
 

Kobaya

XLDnaute Occasionnel
Re : Sauvegarde une seule feuille en copie des valeurs seulement

Bonjour Engue,

Pour ne sauvegarder que l'onglet qui t'intéresse, il faut utiliser la méthode SaveAs de l'objet Worksheet, pas Workbook :
Code:
Sub SauveUneFeuille()
    ActiveSheet.SaveAs "C:\Users\Toto.xls"
End Sub
A toi de stocker dans une variable chaîne de caractères le chemin complet où sauvegarder ton fichier, et qui remplacera '"C:\Users\Toto.xls"'
 

Discussions similaires

Statistiques des forums

Discussions
312 231
Messages
2 086 433
Membres
103 207
dernier inscrit
Michel67