Bonjour tout le monde , tout d'abord je vous remercie pour ce forum pour résoudre différents problèmes confrontés lors de création des macros en Excel . je viens de m'inscrire aujourd'hui car je voulais comprendre beaucoup mieux ce programme pour trouver des solutions avec vos soutiens bien sûr à des questions sur les macros.
ma question d'aujourd'hui est la suivante:
je cherche à créer automatiquement un onglet à partir d'une première feuille et lui donner le nom avec la date du jour sous la forme jj-mm-aaaa.
le contenu de la feuille jj-mm-aaaa doit être sauvegardé et recopié dans la feuille jj+1-mm-aaaa.
ce travail est journalier !!
d'avance merci pour votre aide !
Chaque jour tu veux dupliquer la feuille de la veille ? Et donc à la fin de l'année tu as plus de 300 feuilles dans ton classeur ???
Généralement la multiplication des feuilles alourdi pas mal le classeur et n'est donc pas forcément souhaitable.
Chaque jour tu veux dupliquer la feuille de la veille ? Et donc à la fin de l'année tu as plus de 300 feuilles dans ton classeur ???
Généralement la multiplication des feuilles alourdi pas mal le classeur et n'est donc pas forcément souhaitable.
Bonjour le Fil ,
Bienvenue à nom ami des chemins de fer Belges (SNCB.)!
si de jour en jours tu copies les données de la veille dans la Feuille du Jour , tu vas avoir si je ne me trompe (ça peut arriver Lol) une dernière feuille en fin d'année qui va contenir l'ensemble des Journées de l'année . non ?
car tu Dis :"le contenu de la feuille jj-mm-aaaa doit être sauvegardé et recopié dans la feuille jj+1-mm-aaaa."
Puis la feuille : jj+2-mm-aaaa." contiendra la feuille jj+1-mm-aaaa." qui contient feuille jj-mm-aaaa." etc etc ......
Bonjour, Sylvanu ,
à la base je voulais faire une feuille hebdomadaire style " sem47/2024" mais j'ai besoin de la date journalière pour le suivi journalier et c'est ça qui m'a fait changer d'idée.
je dois avoir les dates des jours de la semaine en question et incrémenter les semaines d'une façon automatique à base de la date système.
Re
Donc ta feuille jj+1-mm-aaaa." contiendra les données de la feuille jj-mm-aaaa." mais avec des dates différentes est ce que tu reportes les données aussi ?
Jean marie
Bonjour le Fil ,
Bienvenue à nom ami des chemins de fer Belges (SNCB.)!
si de jour en jours tu copies les données de la veille dans la Feuille du Jour , tu vas avoir si je ne me trompe (ça peut arriver Lol) une dernière feuille en fin d'année qui va contenir l'ensemble des Journées de l'année . non ?
car tu Dis :"le contenu de la feuille jj-mm-aaaa doit être sauvegardé et recopié dans la feuille jj+1-mm-aaaa."
Puis la feuille : jj+2-mm-aaaa." contiendra la feuille jj+1-mm-aaaa." qui contient feuille jj-mm-aaaa." etc etc ......
Re
Tu pourrais peut être archiver, ces données journalières dans une Feuille "Archives" de ton classeur !
chaque jours tu as besoin de l'ensemble des Données des Jours passés ou seulement certaines données ?
Jean marie
Sub CopieFeuilles()
Dim F, J%, Jour, PremierJour
' Figeage écran et inhibition alertes
Application.ScreenUpdating = False
Application.DisplayAlerts = False
' A modifier par premier janvier de l'année désirée
PremierJour = "1/1/2025"
Sheets("PageType").Visible = True
' Suppression de toutes les feuilles
For Each F In Worksheets
If F.Name <> "PageType" Then Sheets(F.Name).Delete
Next F
' On cherche le premier mundi de l'année
For J = 0 To 7
If Application.Weekday(CDate(PremierJour) + J) = 2 Then
Jour = CDate(PremierJour) + J
Exit For
End If
Next J
' On duplique les feuilles jusqu'à atteindre fin décembre.
While Year(Jour) <= Year(CDate(PremierJour))
Sheets("PageType").Copy After:=Worksheets(Sheets.Count): ActiveSheet.Name = Format(Jour, "dd-mm-yyyy")
[A3] = Jour
Jour = Jour + 1
Wend
Application.DisplayAlerts = True
Sheets("PageType").Visible = False
Sheets(2).Select
End Sub
Pour modifier la page type, faire Afficher Page type, puis lancer la macro par F8.
J'ai mis le fichier en xlsb moins lourd ( 800ko au lieu de 1.3Mo ) vous pouvez le renommer en xlsm, ou le garder ainsi si vous ne travailler pas sous Android.
si tu veux ,la feuille peut rester comme publiée en pièce jointe càd le contenu de la semaine mais sur une feuille journalière jj-mm-aaaa . car j'ai des entrées et des sorties quotidiennement donc j'aurai juste celles ci à encoder la veille et les confirmer le lendemain.
Re
Tu pourrais peut être archiver, ces données journalières dans une Feuille "Archives" de ton classeur !
chaque jours tu as besoin de l'ensemble des Données des Jours passés ou seulement certaines données ?
Jean marie
Sub CopieFeuilles()
Dim F, J%, Jour, PremierJour
' Figeage écran et inhibition alertes
Application.ScreenUpdating = False
Application.DisplayAlerts = False
' A modifier par premier janvier de l'année désirée
PremierJour = "1/1/2025"
Sheets("PageType").Visible = True
' Suppression de toutes les feuilles
For Each F In Worksheets
If F.Name <> "PageType" Then Sheets(F.Name).Delete
Next F
' On cherche le premier mundi de l'année
For J = 0 To 7
If Application.Weekday(CDate(PremierJour) + J) = 2 Then
Jour = CDate(PremierJour) + J
Exit For
End If
Next J
' On duplique les feuilles jusqu'à atteindre fin décembre.
While Year(Jour) <= Year(CDate(PremierJour))
Sheets("PageType").Copy After:=Worksheets(Sheets.Count): ActiveSheet.Name = Format(Jour, "dd-mm-yyyy")
[A3] = Jour
Jour = Jour + 1
Wend
Application.DisplayAlerts = True
Sheets("PageType").Visible = False
Sheets(2).Select
End Sub
Pour modifier la page type, faire Afficher Page type, puis lancer la macro par F8.
J'ai mis le fichier en xlsb moins lourd ( 800ko au lieu de 1.3Mo ) vous pouvez le renommer en xlsm, ou le garder ainsi si vous ne travailler pas sous Android.