Echec methode copy worksheet

Résolu
Bonjour,

J'utilise le code ci dessous
je crée 47 copies pour appliquer des filtres différents sur chaque copie.
Mais malheureusement j'ai un message d'erreur.

Est ce que quelqu'un peut m'expliquer?

merci

Sub Pages()
Dim i, z
z = InputBox("Nombre de copies ", "Copie")
For i = 1 To z
Sheets("Valeur").Copy After:=Sheets(i)
ActiveSheet.Name = "Position " & i
Next i
End Sub

3 réponses

  1. Bonjour,

    un inputbox retourne une chaine de caracteres:

    Sub Pages()
        Dim i
        'soit
        Dim z As Integer
        'et
        z = InputBox("Nombre de copies ", "Copie")
        
        'ou
        'dim z
        'et
        'z = cint(InputBox("Nombre de copies ", "Copie"))
        
        For i = 1 To z
            Sheets("Valeur").Copy After:=Sheets(i)
            ActiveSheet.Name = "Position " & i
        Next i
    End Sub
    


    Bonne suite
    1. Bonjour et merci,

      ça fonctionne très bien
      et j'ai fait plusieurs essais.

      à bientôt

      Charlyjack
  2. Dim x As Integer

    x = InputBox("Nombre de copies")
    For numtimes = 1 To x
    ActiveWorkbook.Sheets("Valeur").Copy _
    After:=ActiveWorkbook.Sheets("Valeur")
    Next
    1. Ce deuxieme code fonctionne très bien également !

      merci beaucoup

      et à bientôt Charlyjack
  3. Bonjour, en fait les codes fonctionnent sur 2007 mais pas sur 2003,
    j'ai essayé l'insertion de pages plutot que la copie , rien à faire ça bloque !

    Quelqu'un a t il une solution ?

    merci

    Charlyjack