Bonjour à tous,
Dans le cadre de mon travail, j'ai un tableau qui me permet de suivre tous
les mois, certains éléments de paie des salariés.
C'est avec votre aide, j'ai une petite macro qui me permettait en début
d'année de creer tous mes onglets de façon automatique selon un tableau
définit dans l'onglet du même nom.
Voici, cette macro :
Sub CreerOnglet()
For Each c In Range([A2], [A65000].End(xlUp))
Sheets("Modele").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = c
ActiveSheet.Hyperlinks.Add Anchor:=c, Address:="", _
SubAddress:="'" & c & "'" & "!A1", TextToDisplay:=c.Value
Next
End Sub
Voilà, le problème qui me préoccupe aujourd'hui. Avec plus de 200 onglets,
je suis obligé tous les mois de recopier les éléments de paie qui sont à 95%
identiques à ceux du mois précédent. Alors vous me voyez venir avec mes gros
sabots. Est-il possible par une macro de recopier de facon automatique la
ligne d'un mois sur un autre en respectant les formules.
http://cjoint.com/?cjfo3Q3p4h
Par avance je vous remercie du temps que vous pourrez consacrer à cette
question.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Pounet95
Bonjour, A mettre dans un module standard et adapter au besoin
Sub Recopie() Dim wb As Workbook Dim sh As Worksheet Dim rep As Integer
'définir classeur Set wb = ThisWorkbook
'on demande le n° du mois à recopier rep = InputBox("n° du mois à recopier ?") 'On vérifie la réponse Select Case rep Case 1 To 11 'OK pour recopie Case 12 MsgBox "Pas possible car mois sur année précédente !" Exit Sub Case Else MsgBox "Numéro de mois non valide ( doit être compris entre 1 et 11 )" Exit Sub End Select
'recopie mois précédent For i = 1 To wb.Sheets.Count Set sh = Sheets(i) With sh .Cells(rep + 4, 2) = .Cells(rep + 3, 2) .Cells(rep + 4, 3) = .Cells(rep + 3, 3) .Cells(rep + 4, 6) = .Cells(rep + 3, 6) .Cells(rep + 4, 7) = .Cells(rep + 3, 7) .Cells(rep + 4, 10) = .Cells(rep + 3, 10) End With Set sh = Nothing Next i End Sub
Bonne journée Pounet95
"Calou" a écrit dans le message de news:
Bonjour à tous, Dans le cadre de mon travail, j'ai un tableau qui me permet de suivre tous les mois, certains éléments de paie des salariés. C'est avec votre aide, j'ai une petite macro qui me permettait en début d'année de creer tous mes onglets de façon automatique selon un tableau définit dans l'onglet du même nom. Voici, cette macro : Sub CreerOnglet() For Each c In Range([A2], [A65000].End(xlUp)) Sheets("Modele").Copy After:=Sheets(Sheets.Count) ActiveSheet.Name = c ActiveSheet.Hyperlinks.Add Anchor:=c, Address:="", _ SubAddress:="'" & c & "'" & "!A1", TextToDisplay:=c.Value Next End Sub
Voilà, le problème qui me préoccupe aujourd'hui. Avec plus de 200 onglets, je suis obligé tous les mois de recopier les éléments de paie qui sont à 95% identiques à ceux du mois précédent. Alors vous me voyez venir avec mes gros sabots. Est-il possible par une macro de recopier de facon automatique la ligne d'un mois sur un autre en respectant les formules.
http://cjoint.com/?cjfo3Q3p4h
Par avance je vous remercie du temps que vous pourrez consacrer à cette question.
Bonne journée
Philippe
Bonjour,
A mettre dans un module standard et adapter au besoin
Sub Recopie()
Dim wb As Workbook
Dim sh As Worksheet
Dim rep As Integer
'définir classeur
Set wb = ThisWorkbook
'on demande le n° du mois à recopier
rep = InputBox("n° du mois à recopier ?")
'On vérifie la réponse
Select Case rep
Case 1 To 11
'OK pour recopie
Case 12
MsgBox "Pas possible car mois sur année précédente !"
Exit Sub
Case Else
MsgBox "Numéro de mois non valide ( doit être compris entre 1 et
11 )"
Exit Sub
End Select
'recopie mois précédent
For i = 1 To wb.Sheets.Count
Set sh = Sheets(i)
With sh
.Cells(rep + 4, 2) = .Cells(rep + 3, 2)
.Cells(rep + 4, 3) = .Cells(rep + 3, 3)
.Cells(rep + 4, 6) = .Cells(rep + 3, 6)
.Cells(rep + 4, 7) = .Cells(rep + 3, 7)
.Cells(rep + 4, 10) = .Cells(rep + 3, 10)
End With
Set sh = Nothing
Next i
End Sub
Bonne journée
Pounet95
"Calou" <ws@trol.com> a écrit dans le message de
news:OY8G2JtaIHA.5436@TK2MSFTNGP03.phx.gbl...
Bonjour à tous,
Dans le cadre de mon travail, j'ai un tableau qui me permet de suivre tous
les mois, certains éléments de paie des salariés.
C'est avec votre aide, j'ai une petite macro qui me permettait en début
d'année de creer tous mes onglets de façon automatique selon un tableau
définit dans l'onglet du même nom.
Voici, cette macro :
Sub CreerOnglet()
For Each c In Range([A2], [A65000].End(xlUp))
Sheets("Modele").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = c
ActiveSheet.Hyperlinks.Add Anchor:=c, Address:="", _
SubAddress:="'" & c & "'" & "!A1", TextToDisplay:=c.Value
Next
End Sub
Voilà, le problème qui me préoccupe aujourd'hui. Avec plus de 200 onglets,
je suis obligé tous les mois de recopier les éléments de paie qui sont à
95% identiques à ceux du mois précédent. Alors vous me voyez venir avec
mes gros sabots. Est-il possible par une macro de recopier de facon
automatique la ligne d'un mois sur un autre en respectant les formules.
http://cjoint.com/?cjfo3Q3p4h
Par avance je vous remercie du temps que vous pourrez consacrer à cette
question.
Bonjour, A mettre dans un module standard et adapter au besoin
Sub Recopie() Dim wb As Workbook Dim sh As Worksheet Dim rep As Integer
'définir classeur Set wb = ThisWorkbook
'on demande le n° du mois à recopier rep = InputBox("n° du mois à recopier ?") 'On vérifie la réponse Select Case rep Case 1 To 11 'OK pour recopie Case 12 MsgBox "Pas possible car mois sur année précédente !" Exit Sub Case Else MsgBox "Numéro de mois non valide ( doit être compris entre 1 et 11 )" Exit Sub End Select
'recopie mois précédent For i = 1 To wb.Sheets.Count Set sh = Sheets(i) With sh .Cells(rep + 4, 2) = .Cells(rep + 3, 2) .Cells(rep + 4, 3) = .Cells(rep + 3, 3) .Cells(rep + 4, 6) = .Cells(rep + 3, 6) .Cells(rep + 4, 7) = .Cells(rep + 3, 7) .Cells(rep + 4, 10) = .Cells(rep + 3, 10) End With Set sh = Nothing Next i End Sub
Bonne journée Pounet95
"Calou" a écrit dans le message de news:
Bonjour à tous, Dans le cadre de mon travail, j'ai un tableau qui me permet de suivre tous les mois, certains éléments de paie des salariés. C'est avec votre aide, j'ai une petite macro qui me permettait en début d'année de creer tous mes onglets de façon automatique selon un tableau définit dans l'onglet du même nom. Voici, cette macro : Sub CreerOnglet() For Each c In Range([A2], [A65000].End(xlUp)) Sheets("Modele").Copy After:=Sheets(Sheets.Count) ActiveSheet.Name = c ActiveSheet.Hyperlinks.Add Anchor:=c, Address:="", _ SubAddress:="'" & c & "'" & "!A1", TextToDisplay:=c.Value Next End Sub
Voilà, le problème qui me préoccupe aujourd'hui. Avec plus de 200 onglets, je suis obligé tous les mois de recopier les éléments de paie qui sont à 95% identiques à ceux du mois précédent. Alors vous me voyez venir avec mes gros sabots. Est-il possible par une macro de recopier de facon automatique la ligne d'un mois sur un autre en respectant les formules.
http://cjoint.com/?cjfo3Q3p4h
Par avance je vous remercie du temps que vous pourrez consacrer à cette question.
Bonne journée
Philippe
JB
Bonjour,
Sub copieDernierLigne() [b15].End(xlUp).Resize(, 12).copy [b15].End(xlUp).Offset(1, 0).PasteSpecial xlPasteFormulas End Sub
http://cjoint.com/?cjhF2FrN2P
JB
On 9 fév, 05:15, "Calou" wrote:
Bonjour à tous, Dans le cadre de mon travail, j'ai un tableau qui me permet de suivre tous les mois, certains éléments de paie des salariés. C'est avec votre aide, j'ai une petite macro qui me permettait en début d'année de creer tous mes onglets de façon automatique selon un tablea u définit dans l'onglet du même nom. Voici, cette macro : Sub CreerOnglet() For Each c In Range([A2], [A65000].End(xlUp)) Sheets("Modele").Copy After:=Sheets(Sheets.Count) ActiveSheet.Name = c ActiveSheet.Hyperlinks.Add Anchor:=c, Address:="", _ SubAddress:="'" & c & "'" & "!A1", TextToDisplay:=c.Value Next End Sub
Voilà, le problème qui me préoccupe aujourd'hui. Avec plus de 200 on glets, je suis obligé tous les mois de recopier les éléments de paie qui so nt à 95% identiques à ceux du mois précédent. Alors vous me voyez venir avec mes gros sabots. Est-il possible par une macro de recopier de facon automatique la ligne d'un mois sur un autre en respectant les formules.
http://cjoint.com/?cjfo3Q3p4h
Par avance je vous remercie du temps que vous pourrez consacrer à cette question.
Bonne journée
Philippe
Bonjour,
Sub copieDernierLigne()
[b15].End(xlUp).Resize(, 12).copy
[b15].End(xlUp).Offset(1, 0).PasteSpecial xlPasteFormulas
End Sub
http://cjoint.com/?cjhF2FrN2P
JB
On 9 fév, 05:15, "Calou" <w...@trol.com> wrote:
Bonjour à tous,
Dans le cadre de mon travail, j'ai un tableau qui me permet de suivre tous
les mois, certains éléments de paie des salariés.
C'est avec votre aide, j'ai une petite macro qui me permettait en début
d'année de creer tous mes onglets de façon automatique selon un tablea u
définit dans l'onglet du même nom.
Voici, cette macro :
Sub CreerOnglet()
For Each c In Range([A2], [A65000].End(xlUp))
Sheets("Modele").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = c
ActiveSheet.Hyperlinks.Add Anchor:=c, Address:="", _
SubAddress:="'" & c & "'" & "!A1", TextToDisplay:=c.Value
Next
End Sub
Voilà, le problème qui me préoccupe aujourd'hui. Avec plus de 200 on glets,
je suis obligé tous les mois de recopier les éléments de paie qui so nt à 95%
identiques à ceux du mois précédent. Alors vous me voyez venir avec mes gros
sabots. Est-il possible par une macro de recopier de facon automatique la
ligne d'un mois sur un autre en respectant les formules.
http://cjoint.com/?cjfo3Q3p4h
Par avance je vous remercie du temps que vous pourrez consacrer à cette
question.
Sub copieDernierLigne() [b15].End(xlUp).Resize(, 12).copy [b15].End(xlUp).Offset(1, 0).PasteSpecial xlPasteFormulas End Sub
http://cjoint.com/?cjhF2FrN2P
JB
On 9 fév, 05:15, "Calou" wrote:
Bonjour à tous, Dans le cadre de mon travail, j'ai un tableau qui me permet de suivre tous les mois, certains éléments de paie des salariés. C'est avec votre aide, j'ai une petite macro qui me permettait en début d'année de creer tous mes onglets de façon automatique selon un tablea u définit dans l'onglet du même nom. Voici, cette macro : Sub CreerOnglet() For Each c In Range([A2], [A65000].End(xlUp)) Sheets("Modele").Copy After:=Sheets(Sheets.Count) ActiveSheet.Name = c ActiveSheet.Hyperlinks.Add Anchor:=c, Address:="", _ SubAddress:="'" & c & "'" & "!A1", TextToDisplay:=c.Value Next End Sub
Voilà, le problème qui me préoccupe aujourd'hui. Avec plus de 200 on glets, je suis obligé tous les mois de recopier les éléments de paie qui so nt à 95% identiques à ceux du mois précédent. Alors vous me voyez venir avec mes gros sabots. Est-il possible par une macro de recopier de facon automatique la ligne d'un mois sur un autre en respectant les formules.
http://cjoint.com/?cjfo3Q3p4h
Par avance je vous remercie du temps que vous pourrez consacrer à cette question.
Bonne journée
Philippe
Calou
Salut Pounet,
C'est avec un peu de retard que je viens te remercier pour cette macro. Tu peux pas imagnier le temps que ca va me faire gagner.
Bonne journée
"Pounet95" a écrit dans le message de news: %
Bonjour, A mettre dans un module standard et adapter au besoin
Sub Recopie() Dim wb As Workbook Dim sh As Worksheet Dim rep As Integer
'définir classeur Set wb = ThisWorkbook
'on demande le n° du mois à recopier rep = InputBox("n° du mois à recopier ?") 'On vérifie la réponse Select Case rep Case 1 To 11 'OK pour recopie Case 12 MsgBox "Pas possible car mois sur année précédente !" Exit Sub Case Else MsgBox "Numéro de mois non valide ( doit être compris entre 1 et 11 )" Exit Sub End Select
'recopie mois précédent For i = 1 To wb.Sheets.Count Set sh = Sheets(i) With sh .Cells(rep + 4, 2) = .Cells(rep + 3, 2) .Cells(rep + 4, 3) = .Cells(rep + 3, 3) .Cells(rep + 4, 6) = .Cells(rep + 3, 6) .Cells(rep + 4, 7) = .Cells(rep + 3, 7) .Cells(rep + 4, 10) = .Cells(rep + 3, 10) End With Set sh = Nothing Next i End Sub
Bonne journée Pounet95
"Calou" a écrit dans le message de news:
Bonjour à tous, Dans le cadre de mon travail, j'ai un tableau qui me permet de suivre tous les mois, certains éléments de paie des salariés. C'est avec votre aide, j'ai une petite macro qui me permettait en début d'année de creer tous mes onglets de façon automatique selon un tableau définit dans l'onglet du même nom. Voici, cette macro : Sub CreerOnglet() For Each c In Range([A2], [A65000].End(xlUp)) Sheets("Modele").Copy After:=Sheets(Sheets.Count) ActiveSheet.Name = c ActiveSheet.Hyperlinks.Add Anchor:=c, Address:="", _ SubAddress:="'" & c & "'" & "!A1", TextToDisplay:=c.Value Next End Sub
Voilà, le problème qui me préoccupe aujourd'hui. Avec plus de 200 onglets, je suis obligé tous les mois de recopier les éléments de paie qui sont à 95% identiques à ceux du mois précédent. Alors vous me voyez venir avec mes gros sabots. Est-il possible par une macro de recopier de facon automatique la ligne d'un mois sur un autre en respectant les formules.
http://cjoint.com/?cjfo3Q3p4h
Par avance je vous remercie du temps que vous pourrez consacrer à cette question.
Bonne journée
Philippe
Salut Pounet,
C'est avec un peu de retard que je viens te remercier pour cette macro. Tu
peux pas imagnier le temps que ca va me faire gagner.
Bonne journée
"Pounet95" <pounetchezlui@ouanadou> a écrit dans le message de news:
%23Xu0zLuaIHA.4144@TK2MSFTNGP05.phx.gbl...
Bonjour,
A mettre dans un module standard et adapter au besoin
Sub Recopie()
Dim wb As Workbook
Dim sh As Worksheet
Dim rep As Integer
'définir classeur
Set wb = ThisWorkbook
'on demande le n° du mois à recopier
rep = InputBox("n° du mois à recopier ?")
'On vérifie la réponse
Select Case rep
Case 1 To 11
'OK pour recopie
Case 12
MsgBox "Pas possible car mois sur année précédente !"
Exit Sub
Case Else
MsgBox "Numéro de mois non valide ( doit être compris entre 1 et
11 )"
Exit Sub
End Select
'recopie mois précédent
For i = 1 To wb.Sheets.Count
Set sh = Sheets(i)
With sh
.Cells(rep + 4, 2) = .Cells(rep + 3, 2)
.Cells(rep + 4, 3) = .Cells(rep + 3, 3)
.Cells(rep + 4, 6) = .Cells(rep + 3, 6)
.Cells(rep + 4, 7) = .Cells(rep + 3, 7)
.Cells(rep + 4, 10) = .Cells(rep + 3, 10)
End With
Set sh = Nothing
Next i
End Sub
Bonne journée
Pounet95
"Calou" <ws@trol.com> a écrit dans le message de
news:OY8G2JtaIHA.5436@TK2MSFTNGP03.phx.gbl...
Bonjour à tous,
Dans le cadre de mon travail, j'ai un tableau qui me permet de suivre
tous les mois, certains éléments de paie des salariés.
C'est avec votre aide, j'ai une petite macro qui me permettait en début
d'année de creer tous mes onglets de façon automatique selon un tableau
définit dans l'onglet du même nom.
Voici, cette macro :
Sub CreerOnglet()
For Each c In Range([A2], [A65000].End(xlUp))
Sheets("Modele").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = c
ActiveSheet.Hyperlinks.Add Anchor:=c, Address:="", _
SubAddress:="'" & c & "'" & "!A1", TextToDisplay:=c.Value
Next
End Sub
Voilà, le problème qui me préoccupe aujourd'hui. Avec plus de 200
onglets, je suis obligé tous les mois de recopier les éléments de paie
qui sont à 95% identiques à ceux du mois précédent. Alors vous me voyez
venir avec mes gros sabots. Est-il possible par une macro de recopier de
facon automatique la ligne d'un mois sur un autre en respectant les
formules.
http://cjoint.com/?cjfo3Q3p4h
Par avance je vous remercie du temps que vous pourrez consacrer à cette
question.
C'est avec un peu de retard que je viens te remercier pour cette macro. Tu peux pas imagnier le temps que ca va me faire gagner.
Bonne journée
"Pounet95" a écrit dans le message de news: %
Bonjour, A mettre dans un module standard et adapter au besoin
Sub Recopie() Dim wb As Workbook Dim sh As Worksheet Dim rep As Integer
'définir classeur Set wb = ThisWorkbook
'on demande le n° du mois à recopier rep = InputBox("n° du mois à recopier ?") 'On vérifie la réponse Select Case rep Case 1 To 11 'OK pour recopie Case 12 MsgBox "Pas possible car mois sur année précédente !" Exit Sub Case Else MsgBox "Numéro de mois non valide ( doit être compris entre 1 et 11 )" Exit Sub End Select
'recopie mois précédent For i = 1 To wb.Sheets.Count Set sh = Sheets(i) With sh .Cells(rep + 4, 2) = .Cells(rep + 3, 2) .Cells(rep + 4, 3) = .Cells(rep + 3, 3) .Cells(rep + 4, 6) = .Cells(rep + 3, 6) .Cells(rep + 4, 7) = .Cells(rep + 3, 7) .Cells(rep + 4, 10) = .Cells(rep + 3, 10) End With Set sh = Nothing Next i End Sub
Bonne journée Pounet95
"Calou" a écrit dans le message de news:
Bonjour à tous, Dans le cadre de mon travail, j'ai un tableau qui me permet de suivre tous les mois, certains éléments de paie des salariés. C'est avec votre aide, j'ai une petite macro qui me permettait en début d'année de creer tous mes onglets de façon automatique selon un tableau définit dans l'onglet du même nom. Voici, cette macro : Sub CreerOnglet() For Each c In Range([A2], [A65000].End(xlUp)) Sheets("Modele").Copy After:=Sheets(Sheets.Count) ActiveSheet.Name = c ActiveSheet.Hyperlinks.Add Anchor:=c, Address:="", _ SubAddress:="'" & c & "'" & "!A1", TextToDisplay:=c.Value Next End Sub
Voilà, le problème qui me préoccupe aujourd'hui. Avec plus de 200 onglets, je suis obligé tous les mois de recopier les éléments de paie qui sont à 95% identiques à ceux du mois précédent. Alors vous me voyez venir avec mes gros sabots. Est-il possible par une macro de recopier de facon automatique la ligne d'un mois sur un autre en respectant les formules.
http://cjoint.com/?cjfo3Q3p4h
Par avance je vous remercie du temps que vous pourrez consacrer à cette question.