Macro avec suite et copies de cellules de feuille N-1
Résolu
Michalechat
Messages postés
4
Statut
Membre
-
Michalechat Messages postés 4 Statut Membre -
Michalechat Messages postés 4 Statut Membre -
Bonjour à tous !
Je tiens un classeur Excel où je note mes heures pour le travaille.
J'ai un modèle que j'aimerai dupliquer 52 ou 53 fois en fonction des années, j'aimerai que les dates suivent. c'est a dire :
feuille "Semaine 1" date du lundi en F4 et samedi en H4 puis Feuille "Semaine 2" date du lundi +7 en F4 au Samedi +7 en H4 ...
J'ai réussi cette manip soit avec Une Macro soit avec une fonction.
Par contre là où je sèche c'est pour les heures à rattraper; je m'explique:
Chaque jour je note mes heures de présence et j'ai une cellule qui calcul automatique la somme de mes heures hebdomadaires. Si j'ai des heures supplémentaires, j'aimerai que celles-ci se reporte automatiquement sur la feuille suivante.
exemple :
Feuille semaine N :
en G37 heures reportés de la semaine passée = 1:30
En G38 total des heures supp de la semaine : = 0
En G39 Heures à reporter "=G38+G37"
je souhaite qu'en feuille N+1 :"G37 =G39 de la feuille N-1
Je n'arrive pas a combiner ces 3 fonctions :
1/ copier 52 ou 53 fois ma feuille modèle avec une Macro
2/ Que les dates de chaque semaines s'enchainent sur les 52 ou 53 feuilles
3/ Que les heures d'une cellule précise (G39) se reportent sur une cellule précise (G37) de la feuille qui suit.
Merci beaucoup pour votre aide.
Michalechat.
Je tiens un classeur Excel où je note mes heures pour le travaille.
J'ai un modèle que j'aimerai dupliquer 52 ou 53 fois en fonction des années, j'aimerai que les dates suivent. c'est a dire :
feuille "Semaine 1" date du lundi en F4 et samedi en H4 puis Feuille "Semaine 2" date du lundi +7 en F4 au Samedi +7 en H4 ...
J'ai réussi cette manip soit avec Une Macro soit avec une fonction.
Par contre là où je sèche c'est pour les heures à rattraper; je m'explique:
Chaque jour je note mes heures de présence et j'ai une cellule qui calcul automatique la somme de mes heures hebdomadaires. Si j'ai des heures supplémentaires, j'aimerai que celles-ci se reporte automatiquement sur la feuille suivante.
exemple :
Feuille semaine N :
en G37 heures reportés de la semaine passée = 1:30
En G38 total des heures supp de la semaine : = 0
En G39 Heures à reporter "=G38+G37"
je souhaite qu'en feuille N+1 :"G37 =G39 de la feuille N-1
Je n'arrive pas a combiner ces 3 fonctions :
1/ copier 52 ou 53 fois ma feuille modèle avec une Macro
2/ Que les dates de chaque semaines s'enchainent sur les 52 ou 53 feuilles
3/ Que les heures d'une cellule précise (G39) se reportent sur une cellule précise (G37) de la feuille qui suit.
Merci beaucoup pour votre aide.
Michalechat.
A voir également:
- Macro avec suite et copies de cellules de feuille N-1
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Bruler feuille de laurier - Guide
- Feuille de pointage excel - Télécharger - Tableur
- Comment faire un livret avec des feuilles a4 - Guide
- Verrouiller cellule excel sans verrouiller la feuille - Guide
3 réponses
Bonjour
Soit la feuille Modele vierge avec seulement les intitulés Lundi, Mardi etc et les formules de calculs dans les cellules. A coté de Lundi laisser en blanc pour entrer la date, à côté de Mardi mettre la formule =cellule de la date de lundi +1 etc pour mercredi ....
La copier une première fois pour la semaine 1
Renommer cette feuille "S1" et la remplir complétement
Dans la macro :
Prévoir une boucle For n=2 to 52 (ou 53)
Dans cette boucle mettre les instructions pour
- copier la feuille modèle
- la renommer "S" & n
- mettre l'instruction Range(adresse decellule de la date du lundi)=sheets("S" & n-1).range(adresse de la cellule de date du lundi)
- mettre l'instruction Range("G37")=sheets("S" & n-1).range("G39")
Cdlmnt
Via
Soit la feuille Modele vierge avec seulement les intitulés Lundi, Mardi etc et les formules de calculs dans les cellules. A coté de Lundi laisser en blanc pour entrer la date, à côté de Mardi mettre la formule =cellule de la date de lundi +1 etc pour mercredi ....
La copier une première fois pour la semaine 1
Renommer cette feuille "S1" et la remplir complétement
Dans la macro :
Prévoir une boucle For n=2 to 52 (ou 53)
Dans cette boucle mettre les instructions pour
- copier la feuille modèle
- la renommer "S" & n
- mettre l'instruction Range(adresse decellule de la date du lundi)=sheets("S" & n-1).range(adresse de la cellule de date du lundi)
- mettre l'instruction Range("G37")=sheets("S" & n-1).range("G39")
Cdlmnt
Via
Poste ton fichier sur mon-partage.fr, fais creer un lien que tu copies et reviens coller ici, je regarderai
Re,
A condition de supprimer les 0 dans les noms des feuilles (de façon à pouvoir incrémenter), une fois la feuille Prev 1 établie, la macro suivante la copie 51 fois, change les dates et met la bonne formule en G37
Cdlmnt
Via
A condition de supprimer les 0 dans les noms des feuilles (de façon à pouvoir incrémenter), une fois la feuille Prev 1 établie, la macro suivante la copie 51 fois, change les dates et met la bonne formule en G37
Sub creafeuilles() For n = 2 To 52 Sheets("Prev 1").Select Sheets("Prev 1").Copy After:=Sheets(Sheets.Count) Sheets("Prev 1 (2)").Select Sheets("Prev 1 (2)").Name = "Prev " & n prec = "Prev " & n - 1 Sheets("Prev " & n).Range("F4") = Sheets(prec).Range("H4") + 2 form = "='" & prec & "'!G39" Sheets("Prev " & n).Range("G37").Select Selection.Formula = form Next End Sub
Cdlmnt
Via
Je suis vraiment nul en codage (c'est mon premier essaie je ne sais pas si j'ai les bons codes)
Pourtant tout est visible, je ne comprend pas :