Création d'une mise en forme automatisé sur plus feuille

Bonjour à tous,

Je débute en VBA et je suis actuellement en train d'essayer de créer une macro pour faciliter la création d'un fichier.

Le but serait qu'au lieu d'avoir à créer manuellement en chaque début d'exercice, un fichier avec un tableau par feuille chaque feuille

représentant un mois, pouvoir simplement sélectionner une année, valider et la création se ferait automatiquement.

Grâce à mes recherches, j'ai réussi à commencer à obtenir un début du résultat que je souhaite.

L'inconvénient est que la macro fait planter les ordinateurs de mon boulot, car pas très performant.

Je souspçonne mon code d'être en cause, car loin d'être optimisé.

Je voudrais donc savoir si quelqu'un pourrait y jeter un oeil et me dire les solutions plus simples que je pourraient adoptés pour alléger tout ça.

Je vous remercie par avance de votre aide,

A bientot

Merci de ton aide .

J'ai regardé ce que tu m'a envoyé, c'est vrai que c'est une solution très simple qui peut-être très utile.

Toute fois, j'aurai aimé trouver une solution sur VBA pour pouvoir finir ce que j'ai commencé.

Je réalise actuellement un projet pour mes études, et je pense que la solution VBA sera apprécié par le jury et sera une vraie

valeur ajouté.

Bonjour,

Une proposition pour te simplifier la vie.

A toi de juger !

A+

C'est génial ce que tu as fais.

Bravo et merci beaucoup.

Si jamais je rentre des formules (somme, moyenne etc...) sur la feuille "modèle" est ce que ça va les conserver ?

Merci encore !

Tu peux toujours faire le test

A+

J'ai test ça marche super bien!

y a seulement la mise en forme qui s'adapte pas au nombre de jour dans le mois mais c'est pas bien grave

Merci encore pour ton aide précieuse et ta patiente.

Malgré mes recherches je n'ai pas trouvé la solution pour pouvoir, copier toutes les feuilles mois créer vers un autre classeur portant le nom de l'année sélectionné en cliquant sur le bouton "archiver ".

Je voudrai faire exactement la meme chose que le bouton supprimer, sauf qu'au lieu de supprimer un nouveau classeur se créer avec les feuilles de janvier à décembre.

Je vous remercie par avance, de votre aide encore une fois

Bonjour,

Le classeur archive "2016.xlsx" étant ouvert, tu peux appliquuer ce type de code :

Sub Copier_Feuilles()
Dim Ws As Worksheet
    For Each Ws In ThisWorkbook.Worksheets
        If Ws.Name <> "Mise en forme" And Ws.Name <> "Modele" Then
            With Workbooks("2016.xlsx")
                Ws.Copy After:=.Sheets(.Sheets.count)
            End With
        End If
    Next
End Sub

A+

Super !

est ce que tu penses qu'en ajoutant workbook.add on peut créer un nouveau classeur qui s'ouvrivrait?

Car les utilisateurs qui utiliseront le fichier n'ouvriront pas le classeur "archive"avant l'archivage.

Je remercie pour ton aide,

Je te conseille surtout de jeter un œil sur les nombreux posts qui traitent de la création d'un classeur avec VBA Excel.

Tu devras te poser les questions suivantes :

  • comment est défini le nom du fichier de sauvegarde ?
  • quel sera l'emplacement de ce fichier ?
  • comment l'enregistrer après ajout des feuilles ?
  • que se passe t-il si l'opérateur renouvelle l'opération ?

A+

D'accord , merci du conseil,

Je vais jeter un oeil à tout ça quand j'aurai un moment.

Je connais plus ou moins les réponses à ces questions:

  • les fichiers archivés seront stockés à un emplacement fixe sur un réseau dont je connais le chemin,
  • les fichiers prendraient le nom de l'année sélectionnée dans le combobox1,
  • enregistré au format .xls,
  • et si l'opérateur renouvelle l'opération je voudrais que cela actualise simplement le fichier mais logiquement il n'y aura pas de renouvellement d'opération étant donné que l'archivage se fera une fois par an , à savoir fin décembre.

Il me reste plus qu'a trouver comment écrire ça en VBA, haha

Merci encore pour ton aide

a bientôt

Rechercher des sujets similaires à "creation mise forme automatise feuille"