Copier/Coller une feuille et renuméroter

ManuF

XLDnaute Nouveau
Bonjour,

Je chercher à Copier/Coller une feuille et renuméroter la nouvelle feuille dans la cellule Q2.
Apparemment ma manière de faire ne fonctionne pas.
De plus la feuille peut être Copier/Coller à plusieurs reprises et renuméroter à chaque fois par rapport à la dernière.
Pourriez vous me dire quelles sont mes erreurs?

Merci par avance,
 

Pièces jointes

  • ClasseurTest.xls
    75.5 KB · Affichages: 39
  • ClasseurTest.xls
    75.5 KB · Affichages: 42
  • ClasseurTest.xls
    75.5 KB · Affichages: 37

Caillou

XLDnaute Impliqué
Re : Copier/Coller une feuille et renuméroter

Bonjour,

Essayes ce code :
Code:
Private Sub CommandButton1_Click()
  Dim num As Integer
  num = ActiveSheet.Range("Q2")
  ActiveSheet.Copy after:=ActiveSheet
  Range("Q2").Value = num + 1 
End Sub
Caillou
 

ManuF

XLDnaute Nouveau
Re : Copier/Coller une feuille et renuméroter

Bonjour Caillou,

Merci pour ta réponse,

Alors je viens de tester ce code, le résultat est le suivant :

- la copie se fait correctement
- le renumérotation se fait sur la première feuille
Je m'explique Feuil est bien copié en Feuil2, mais la renumérotation affichée dans la cellule ("Q2") est 2 pour Feuil et 1 pour Feuil 2.

Manu
 

ManuF

XLDnaute Nouveau
Re : Copier/Coller une feuille et renuméroter

Salut Caillou,

Désolé de ne répondre que maintenant, j'ai été pas mal occupé par le boulot.
Effectivement la macro copie la feuille active, lorsque je le faisais le numéro de la feuille restait à 1 sur la copie aussi. C'est pourquoi je parlais de renumérotation.
Mon souhaits est que la copie porte le numéro correspondant à la copie, c'est à dire que Originale porte le numéro 1, la copie porte le numéro 2 etc...

En attendant je tiens tout de même à te remercier pour le temps que tu m'accordes.

ManuF
 

ManuF

XLDnaute Nouveau
Re : Copier/Coller une feuille et renuméroter

Bonjour,

C'est bon j'ai fini par trouver, tout en gardant la base que m'avais donné Caillou.

Private Sub CommandButton1_Click()

Dim WsName As String
Dim num As Integer
num = ActiveSheet.Range("W2")
ActiveSheet.Copy after:=ActiveSheet
WsName = ActiveSheet.Name
Sheets(WsName).Range("W2").Value = num + 1


End Sub


Merci à +
 

Discussions similaires

Statistiques des forums

Discussions
312 440
Messages
2 088 459
Membres
103 856
dernier inscrit
Olivv84