Recopie de feuille conditionnel

laskachien Messages postés 30 Date d'inscription lundi 21 mai 2007 Statut Membre Dernière intervention 27 septembre 2014 - 24 oct. 2010 à 18:08
jordane45 Messages postés 38142 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 - 27 oct. 2010 à 11:32
Bonjour
J ai un classeur avec les sheets 1 2 3.Je desire une feuille par an.Pour cela il me faut recopier 1 sur 2 et 3.MAIS sans les valeurs de la precedente,en ne conservant que les libels et les formules?Merci

6 réponses

jordane45 Messages postés 38142 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 344
25 oct. 2010 à 18:38
Bonjour,

tu peux utiliser l'enregistreur de macro pour obtenir le squelette de ton code, et ensuite l'adapter à tes besoins.

Par exemple pour copier une feuille en dernière position de ton classeur :

Sub Ajout_Feuille()
Dim derniere_Feuille As Integer
    Nb_Feuilles = ActiveWorkbook.Sheets.Count ' Nombre de feuilles du classeur
Dim NomF  As String
    NomF = "Feuil1" ' nom de la feuille à copier
    
    'copier la feuille NomF
    Sheets(NomF).Select
    Sheets(NomF).Copy After:=Nb_Feuilles
    
    ' renomer la nouvelle feuille
    ActiveSheet.Name = "nouveau_Nom"
    
End Sub


Ne te reste plus qu'à supprimer le contenu des cellules que tu désires enlever.

Cordialement,
Jordane,
______________________________________________________
Règles du forum à lire avant de poster une question : ICI
0
laskachien Messages postés 30 Date d'inscription lundi 21 mai 2007 Statut Membre Dernière intervention 27 septembre 2014
26 oct. 2010 à 13:26
Merci de la reponse,cela je le sais.Mais ce qui m interesse c est une macro capable d effacer les values sauf les libels et les formules dans la nouvelle sheet copiee!
0
jordane45 Messages postés 38142 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 344
26 oct. 2010 à 13:53
Bonjour,
une macro capable d effacer les values

pour ça je pense que tu vas devoir gérer chaque Range séparément.

par exemple:
Sub test()

Dim Ma_plage As Range
Set Ma_plage = Range("A1:C1")
    'suppression des données dans Ma_plage
        Ma_plage.Clear

End Sub


Cordialement,
Jordane,
______________________________________________________
Règles du forum à lire avant de poster une question : ICI
0
jordane45 Messages postés 38142 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 344
26 oct. 2010 à 14:04
Bonjour,
Petit complément qui peut t'aider :

Sub test()

Dim Ma_plage As Range
Set Ma_plage = Range("A1:C1")
    
Ma_plage.Select
'Selection des cellules contenant des constantes
'-----------------------------------------------------------------------------
'XlCellType peut être l'une de ces constantes XlCellType.
'xlCellTypeAllFormatConditions.  Cellules de n'importe quel format
'xlCellTypeAllValidation. Cellules présentant des critères de validation
'xlCellTypeBlanks.cellules vides
'xlCellTypeComments. Cellules contenant des commentaires
'xlCellTypeConstants. Cellules contenant des constantes
'xlCellTypeFormulas. Cellules contenant des formules
'xlCellTypeLastCell. Dernière cellule dans la plage utilisée
'xlCellTypeSameFormatConditions.  Cellules de même format
'xlCellTypeSameValidation.  Cellules présentant les mêmes critères de validation
'xlCellTypeVisible. Toutes les cellules visibles
'-----------------------------------------------------------------------------
    On Error Resume Next
Selection.SpecialCells(xlCellTypeConstants, 23).Select
' Suppression des données dans ces cellules
Selection.Clear


End Sub


Cordialement,
Jordane,
______________________________________________________
Règles du forum à lire avant de poster une question : ICI
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
laskachien Messages postés 30 Date d'inscription lundi 21 mai 2007 Statut Membre Dernière intervention 27 septembre 2014
27 oct. 2010 à 11:09
Merci c est juste ce qu il me fallait;pour me simplifier la vie!
0
jordane45 Messages postés 38142 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 344
27 oct. 2010 à 11:32
Bonjour,


Si la réponse te convient, penses à la mettre en résolu. (réponse accéptée).

Bonne continuation.

Cordialement,
Jordane,
______________________________________________________
Règles du forum à lire avant de poster une question : ICI
0
Rejoignez-nous