Copier un fichier et mettre dans un onglet selon année
Résolu
J-Art
-
Theo.R Messages postés 585 Statut Membre -
Theo.R Messages postés 585 Statut Membre -
Bonjour,
Après ma dernière question qui a été réglée, je reviens vers vous pour un autre problème. J' ai une fiche de salaire qui change chaque mois selon les heures effectuées, etc. Je voudrais savoir s'il y a une macro qui, quand j’appuie dessus, elle fasse une copie et la garde dans l'onglet qui correspond à l'année dont la fiche est faite (il y a donc plusieurs onglets qui vont de 2016 à 2030).
Merci d'avance
Après ma dernière question qui a été réglée, je reviens vers vous pour un autre problème. J' ai une fiche de salaire qui change chaque mois selon les heures effectuées, etc. Je voudrais savoir s'il y a une macro qui, quand j’appuie dessus, elle fasse une copie et la garde dans l'onglet qui correspond à l'année dont la fiche est faite (il y a donc plusieurs onglets qui vont de 2016 à 2030).
Merci d'avance
A voir également:
- Copier un fichier et mettre dans un onglet selon année
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Fichier bin - Guide
- Fichier rar - Guide
- Creer un fichier .bat - Guide
1 réponse
Bien sûr, tout est possible avec les macro :D
Le code suivant fonctionne si :
1) vous appelez votre feuille de travail "test" (vous pouvez le modifier dans le code bien sûr)
2) Dans cette feuille de travail, la cellule B2 contient le numéro de l'année (ex: 2016)
3) enfin : une autre feuille qui se nomme déjà 2016 dans notre exemple existe (elle sera remplacée par la feuille test) :
Le code suivant fonctionne si :
1) vous appelez votre feuille de travail "test" (vous pouvez le modifier dans le code bien sûr)
2) Dans cette feuille de travail, la cellule B2 contient le numéro de l'année (ex: 2016)
3) enfin : une autre feuille qui se nomme déjà 2016 dans notre exemple existe (elle sera remplacée par la feuille test) :
Sub testYEAR()
Dim A As String
Application.DisplayAlerts = False
A = Sheets("test").Cells(1, 2).Value
Sheets("test").Copy Before:=Sheets(A)
Sheets(A).Select
ActiveWindow.SelectedSheets.Delete
Sheets("test (2)").Name = A
Application.DisplayAlerts = True
End Sub
Je vais essayer ça demain et je te redis
Ma feuille s'appelle Fiches de salaire
La partie que je veux copier c'est la zone A1:F45
L'année en cours se trouve sur F13
Il faudra qu'on puisse enregistrer 100 feuilles de salaire par mois, soit 1200 par an. Il y a-t-il un risque que les feuilles se chevauchent ?
Merci beaucoup pour ton aide ;)
Par contre il y a quelque chose que je ne saisis par sur votre document : la feuille Fiches de salaire contient Cb de fiches ? Il faut les enregistrer par mois ou par an sur la même feuille excel ?
Chaque employé aura 12 feuilles de salaire (pour chaque mois) mais ces 12 feuilles seront sauvegardées dans l'onglet de l'année en cours
Merci aussi pour la rapidité de ta réponse :)