Pb sur incrémentation de feuilles

N

nanou

Guest
j'ai un classeur de prestations où l'on trouve une feuille par mois que j'incrémente au fur et à mesure des prestations émises. Je n'arrive pas à trouver la bonne formule pour que mon calcul sur la feuille 2 se répercute sur la feuille 3 et qui s'incrémente à partir de la feuille 2 et ainsi de suite à chaque nouvelle feuille. Bref, je joins mon fichier et je remercie ceux qui pourront m'aider. [file name=CLASSEURTEST.zip size=23897]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/CLASSEURTEST.zip[/file]
 

Pièces jointes

  • CLASSEURTEST.zip
    23.3 KB · Affichages: 16
  • CLASSEURTEST.zip
    23.3 KB · Affichages: 12
  • CLASSEURTEST.zip
    23.3 KB · Affichages: 12
M

moustache

Guest
Bonsoir,

J'ai regardé ton fichier, je ne suis pas sûr d'avoir compris, je suppose que les deux feuilles sont sensées avoir la même structure, avec les cumuls sur la même ligne ?

En faisant cette hypothèse, je te propose la solution ci-jointe. J'ai rajouté dans ta macro les instructions qui réécrivent la formule de la cellule à modifier. Il y a sans doute des solutions plus élégantes, mais celle-là fonctionne.

(peux-tu m'expliquer à quoi sert ta variable D ?)

Bon travail !
 
M

moustache

Guest
Bonsoir,

J'ai regardé ton fichier, je ne suis pas sûr d'avoir compris, je suppose que les deux feuilles sont sensées avoir la même structure, avec les cumuls sur la même ligne ?

En faisant cette hypothèse, je te propose la solution ci-jointe. J'ai rajouté dans ta macro les instructions qui réécrivent la formule de la cellule à modifier. Il y a sans doute des solutions plus élégantes, mais celle-là fonctionne.

(peux-tu m'expliquer à quoi sert ta variable D ?)

Bon travail !
 

moustache

XLDnaute Nouveau
bon, apparemment le fichier joint n'est pas passé.

Voici la macro :

Public Sub Ajoutercalcul()

Dim D As Date
'### 4 variables supplémentaires
Dim C As Integer 'nombre de feuilles
Dim N1 As String, N2 As String 'noms des deux feuilles utilisées
Dim FRM As String 'formule du calcul

'###ajout de moustache
'on lit le numéro de la dernière feuille
C = Worksheets.Count
'###fin d'ajout

'Copie du dernier onglet
Sheets(Worksheets.Count).Copy After:=Sheets(Worksheets.Count)

'###ajout de moustache
'on lit les noms des deux feuilles
N1 = ActiveSheet.Name
N2 = Sheets(C).Name
'à partir de ces 2 noms
'on crée une variable texte contenant la formule *
'à mettre dans la cellule C16
FRM = '='' & N2 & ''!C16+'' & N1 & ''!C8'
'on affecte la formule à la cellule
ActiveSheet.Range('C16').Formula = FRM
'###fin d'ajout

With ActiveSheet
D = .Range('C24').Value + 1
End With

End Sub
 

moustache

XLDnaute Nouveau
Bonsoir,
Est-ce que ton problème est résolu ?
Je pense que ça ne fonctionne pas dans ton fichier parce que les cumuls ne sont pas à la même ligne.
Pour tester ma macro j'ai modifié ton fichier en insérant 3 lignes avant 'cumul', de façon que la valeur recherchée soit toujours sur la même ligne (ligne 16) et ça marche.
Si tu es obligée d'avoir un numéro de ligne variable c'est un peu plus compliqué mais c'est faisable aussi.



[file name=TESTMODIF.zip size=25897]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/TESTMODIF.zip[/file]
 

Pièces jointes

  • TESTMODIF.zip
    25.3 KB · Affichages: 14
N

nanou

Guest
désolée le fichier n'est pas passé, le voici => :S [file name=RETESTMODIF.zip size=41773]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/RETESTMODIF.zip[/file]
 

Pièces jointes

  • RETESTMODIF.zip
    40.8 KB · Affichages: 15
N

nanou

Guest
bis [file name=RETESTMODIF_20060427224201.zip size=41773]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/RETESTMODIF_20060427224201.zip[/file]
 

Pièces jointes

  • RETESTMODIF_20060427224201.zip
    40.8 KB · Affichages: 7

moustache

XLDnaute Nouveau
re-bonsoir,
Bon, il faudrait qqs précisions

dans ton premier fichier j'avais compris que c'étair la macro qui copiait la feuille ; l le fichier que je t'ai envoyé contient une macro qui fait la copie et qui corrige la formule.
Est-ce qu'elle ne marche pas chez toi? dans ce cas quelle est ta version d'excel ?

Maintenant dans ton deuxième fichier tu as l'air de dire que tu fais la copie manuellement à partir de l'onglet. Dans ce cas le pb est différent.

Pour le numéro de ligne variable, c'est pas trop grave si c'est tjs au même endroit par rapport au texte 'cumul annuel'

Dernière question, est-ce que c'est tjs la dernière feuille que tu copies ou est-ce que ça peut être une feuille du milieu ?


J'attends tes précisisons
@+
 
M

moustache

Guest
re-bonsoir,
Bon, il faudrait qqs précisions

dans ton premier fichier j'avais compris que c'étair la macro qui copiait la feuille ; l le fichier que je t'ai envoyé contient une macro qui fait la copie et qui corrige la formule.
Est-ce qu'elle ne marche pas chez toi? dans ce cas quelle est ta version d'excel ?

Maintenant dans ton deuxième fichier tu as l'air de dire que tu fais la copie manuellement à partir de l'onglet. Dans ce cas le pb est différent.

Pour le numéro de ligne variable, c'est pas trop grave si c'est tjs au même endroit par rapport au texte 'cumul annuel'

Dernière question, est-ce que c'est tjs la dernière feuille que tu copies ou est-ce que ça peut être une feuille du milieu ?


J'attends tes précisisons
@+
 
N

nanou

Guest
J'ai excel 2002. J'incrémente toujours la dernière feuille à partir de l'onglet et mon cumuml annuel peut changé de ligne en fonction du nombre de presta émises qui agrandit ou non le tableau.
Merci de prendre autant de temps sur mon problème. :)
 

moustache

XLDnaute Nouveau
Bonjour,

Essaie ça, je pense que ça répond à ta question. Malheureusement l'évènement NewSheet ne marche que quand on insère une feuille, pas quand on crée une copie ; j'utilise donc l'évènement Sheet Activate et je teste si le nom de la feuille se termine par (2), c'est-à-dire si tu viens de copier une feuille. Ca veut donc dire qu'il faut renommer la feuille avant de faire une nouvelle copie (qui se terminerait par (3) et ne serait pas détectée) ; j'ai inséré une instruction pour ça, tu n'as qu'à supprimer le guillemet de commentaire devant si ça te convient.

Pas la peine de me remercier, ça m'a permis de travailler des évènements que je connaissais peu ;
Mais dis-moi si ça répond à ton pb!

[file name=RETEST2.zip size=26883]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/RETEST2.zip[/file]
 

Pièces jointes

  • RETEST2.zip
    26.3 KB · Affichages: 23

Discussions similaires

Statistiques des forums

Discussions
312 675
Messages
2 090 799
Membres
104 667
dernier inscrit
gwtr