Automatiser les pages Excel

Résolu
Bonjour,
Je cherche à automatiser mes nouvelles feuilles excel dans le même classeur.
Càd: A chaque création d'une nouvelle "sheet" j'aimerais trouver la mise en page de la précédente. Pas besoin de faire des copier/coller à chaque fois.
Si vous pourriez m'aider?
Le plus ce serait de garder même la liaison avec la base de données.
Merci d'avance!!

2 réponses

  • Votes
  • Date
  • Date décroissante
  1. Contributeur
    Bonjour

    Avez-vous essayé de dupliquer la feuille
    Clique droit sur l'onglet
    Déplacer ou copier
    en dernier
    mettre la coche devant créer une copie
    renommer la feuille
    1. Tout d'abord merci pour votre réponse!
      Et pour la solution que vous avez proposez, oui je l'ai fait sauf que j'ai une bas de donnée qui comporte plus d'une centaine de feuilles et j'aimerais le faire automatiquement.

      Voici un code que j'ai fait mais j'ai un petit souci au niveau du nom de la feuille. le nom ne s'incrémente pas à chaque fois. Par exemple feuille S1 ensuite S2...Sn.

      Sub essai()
      nbFeuille = Sheets.Count
      'Dim i As Integer
      Dim Valarray(52)

      Sheets("S").Copy After:=Sheets(nbFeuille)

      Sheets(nbFeuille + 1).Name = "S"

      End Sub
    2. Essaye avec ça

      Sub essai()
      Dim nbFeuille as Integer
      nbFeuille = Sheets.Count
      
      Sheets("S").Copy After:=Sheets(nbFeuille)
      
      Activesheet.name = "S" & nbFeuille -1
      
      End Sub


      Si tu considère que la feuille "S" est une feuille modèle.
    3. Merci beaucoup!!
      Ça marche!!!
  2. Contributeur
    Bonjour

    Je ne suis pas spécialiste des macros mais je viens de modifier votre macro comme ceci

    Sub essai()
    nbfeuille = Sheets.Count
    Dim i As Integer
    Sheets("S").Copy After:=Sheets(nbfeuille)
    Sheets(Sheets.Count).Name = "S" & "_" & nbfeuille + 1

    End Sub

    et cela fonctionne bien

    Bonne journée

    C'est en forgeant que l'on devient forgeron. - C'est au pied du mur que l'on voit le maçon - on apprend toujours de ses erreurs
    1. Sub essai()
      Dim nbfeuile as integer 'Il est conseillé de toujours définir une variable avant de l'utiliser.
      nbfeuille = Sheets.Count
      Dim i As Integer 'Vous définissez cette variable mais vous ne l'utilisez pas.
      Sheets("S").Copy After:=Sheets(nbfeuille)
      Sheets(Sheets.Count).Name = "S" & "_" & nbfeuille + 1
      
      End Sub
      


      Loin d'être parfais :), mais c'est comme ça qu'on apprend.
    2. Contributeur
      Merci pour votre correction, c'est comme ça qu'on apprend

      Bonne journée
    3. Merci énormément!!
      Ça marche à merveille!!

      Bonne journée à vous aussi