Faire varier le nombre d'éléments (de différents onglets) d'une addition
16 réponses
recherche.quad
Bonjour !
J'ai essay=E9 de faire un titre clair.................rat=E9 :-(
J'ai besoin de votre aide.
Je dois faire un classeur qui r=E9sume mensuellement un autre classeur
hebdomadaire.....sauf que le nombre de semaines dans chaque mois
change presque tous les ans (sorte de coutume du domaine d'activit=E9).
Donc j'ai une case en haut de chacune de mes colonnes mensuelles du
classeur 2 dans laquelle on indique le nombre de semaines du mois (le
num=E9ro de la premi=E8re du mois est donc la somme du nb de semaines pour
chaque mois pr=E9c=E9dent plus 1 ; la derni=E8re est donc la premi=E8re plus
le nombre de semaines du mois moins 1).
J'ai aussi des onglets "sem 1", "sem 2", ... dans mon classeur 1.
Je dois dans certaines cellules faire la somme du mois pr=E9c=E9dent
(c'est donc un cumul mensuel) et de 4 ou 5 montants de 4 ou 5 onglets
du classeur 1
--> Pour prendre un exemple clair, il faudra que le classeur deux
donne pour avril (en admettant qu'il y a 4 semaines en avril) la somme
des semaines 13 =E0 16 ou 14 =E0 17 suivant qu'on a compt=E9 4 ou 5 semaines
en Mars (9 =E0 12 ou 9 =E0 13).
/!\ Ca me parait un peu compliqu=E9 (m=EAme si j'esp=E8re avoir tort) donc
il faudra peut-=EAtre d=E9couper le probl=E8me en plusieurs morceaux r=E9so=
lus
ind=E9pendemment... /!\
Donc, =E0 moins que quelqu'un ne trouve une solution rapide, =E9l=E9gante et
efficace imm=E9diatement, je propose qu'on commence par se pencher sur
le d=E9coupage qu'on pourrait faire du probl=E8me (et donc de la
solution).
Vous en pensez quoi ?
Merci pour l'aide (future) ;-)
Dites-moi si vous avez besoin d'un classeur d'exemple stock=E9 qq part.
Le problème du nombre de semaines on le verra après peut-être. Ben non, pas après, car le nombre de semaines conditionne tout.
Regarde le classeur à l'adresse suivante : http://cjoint.com/?gBraSG0qhk et exécute la macro "ModifAnnuelle" dont voici le code :
Sub ModifAnnuelle() Dim c As Range, SemDeb As Integer, SemFin As Integer Dim i As Integer, Formule As String For Each c In Range("A2:L2") SemDeb = Application.Sum(Range(Range("A1"), _ Range("A1").Offset(, c.Column - 1))) - c.Offset(-1) + 1 SemFin = Application.Sum(Range(Range("A1"), _ Range("A1").Offset(, c.Column - 1))) If c.Column = 1 Then Formule = "=" Else Formule = "=" & c.Offset(, -1).Address End If For i = SemDeb To SemFin Formule = Formule + "+'[Suivi des Marges Hebdo 2007.xls]sem" _ & i & "'!$E17" Next i c.Formula = Formule Next c End Sub
Daniel
Le problème du nombre de semaines on le verra après peut-être.
Ben non, pas après, car le nombre de semaines conditionne tout.
Regarde le classeur à l'adresse suivante :
http://cjoint.com/?gBraSG0qhk
et exécute la macro "ModifAnnuelle"
dont voici le code :
Sub ModifAnnuelle()
Dim c As Range, SemDeb As Integer, SemFin As Integer
Dim i As Integer, Formule As String
For Each c In Range("A2:L2")
SemDeb = Application.Sum(Range(Range("A1"), _
Range("A1").Offset(, c.Column - 1))) - c.Offset(-1) + 1
SemFin = Application.Sum(Range(Range("A1"), _
Range("A1").Offset(, c.Column - 1)))
If c.Column = 1 Then
Formule = "="
Else
Formule = "=" & c.Offset(, -1).Address
End If
For i = SemDeb To SemFin
Formule = Formule + "+'[Suivi des Marges Hebdo 2007.xls]sem" _
& i & "'!$E17"
Next i
c.Formula = Formule
Next c
End Sub
Le problème du nombre de semaines on le verra après peut-être. Ben non, pas après, car le nombre de semaines conditionne tout.
Regarde le classeur à l'adresse suivante : http://cjoint.com/?gBraSG0qhk et exécute la macro "ModifAnnuelle" dont voici le code :
Sub ModifAnnuelle() Dim c As Range, SemDeb As Integer, SemFin As Integer Dim i As Integer, Formule As String For Each c In Range("A2:L2") SemDeb = Application.Sum(Range(Range("A1"), _ Range("A1").Offset(, c.Column - 1))) - c.Offset(-1) + 1 SemFin = Application.Sum(Range(Range("A1"), _ Range("A1").Offset(, c.Column - 1))) If c.Column = 1 Then Formule = "=" Else Formule = "=" & c.Offset(, -1).Address End If For i = SemDeb To SemFin Formule = Formule + "+'[Suivi des Marges Hebdo 2007.xls]sem" _ & i & "'!$E17" Next i c.Formula = Formule Next c End Sub
Daniel
recherche.quad
FFO> Je sens qu'on touche au but... Je bidouille ton truc et je te dis ;-)
FFO> Je sens qu'on touche au but...
Je bidouille ton truc et je te dis ;-)
FFO> Je sens qu'on touche au but... Je bidouille ton truc et je te dis ;-)
recherche.quad
Daniel> Je disais ça parce que certains (...) partaient dans des calculs de nombre de semaines si elle commençait un lundi ou un vendredi ou que sais-je alors que le nombre de semaines je le connais déjà.
Bref, ton classeur est excellent, je n'ai qu'un soucis : je ne dois pas avoir la formule dans each c du range("a2:l2") mais toutes les deux cellules (du range("i9:ae9")).....comment je fais ? :D
Daniel> Je disais ça parce que certains (...) partaient dans des
calculs de nombre de semaines si elle commençait un lundi ou un
vendredi ou que sais-je alors que le nombre de semaines je le connais
déjà.
Bref, ton classeur est excellent, je n'ai qu'un soucis : je ne dois
pas avoir la formule dans each c du range("a2:l2") mais toutes les
deux cellules (du range("i9:ae9")).....comment je fais ? :D
Daniel> Je disais ça parce que certains (...) partaient dans des calculs de nombre de semaines si elle commençait un lundi ou un vendredi ou que sais-je alors que le nombre de semaines je le connais déjà.
Bref, ton classeur est excellent, je n'ai qu'un soucis : je ne dois pas avoir la formule dans each c du range("a2:l2") mais toutes les deux cellules (du range("i9:ae9")).....comment je fais ? :D
Daniel
J'ai mis de A à L parce que ça fait 12 colonnes (1 par mois) dans le range("I9:AE9"), il y en a 23. A quoi corresppondent-elles ? Et où se trouvent les nombres de semaine ? Le mieux serait que tu mettre un exemple sur www.cjoint.com et que tu postes l'adresse générée? Daniel a écrit dans le message de news:
Daniel> Je disais ça parce que certains (...) partaient dans des calculs de nombre de semaines si elle commençait un lundi ou un vendredi ou que sais-je alors que le nombre de semaines je le connais déjà.
Bref, ton classeur est excellent, je n'ai qu'un soucis : je ne dois pas avoir la formule dans each c du range("a2:l2") mais toutes les deux cellules (du range("i9:ae9")).....comment je fais ? :D
J'ai mis de A à L parce que ça fait 12 colonnes (1 par mois) dans le
range("I9:AE9"), il y en a 23. A quoi corresppondent-elles ? Et où se
trouvent les nombres de semaine ?
Le mieux serait que tu mettre un exemple sur www.cjoint.com et que tu postes
l'adresse générée?
Daniel
<recherche.quad@gmail.com> a écrit dans le message de news:
1182958673.674502.156430@o61g2000hsh.googlegroups.com...
Daniel> Je disais ça parce que certains (...) partaient dans des
calculs de nombre de semaines si elle commençait un lundi ou un
vendredi ou que sais-je alors que le nombre de semaines je le connais
déjà.
Bref, ton classeur est excellent, je n'ai qu'un soucis : je ne dois
pas avoir la formule dans each c du range("a2:l2") mais toutes les
deux cellules (du range("i9:ae9")).....comment je fais ? :D
J'ai mis de A à L parce que ça fait 12 colonnes (1 par mois) dans le range("I9:AE9"), il y en a 23. A quoi corresppondent-elles ? Et où se trouvent les nombres de semaine ? Le mieux serait que tu mettre un exemple sur www.cjoint.com et que tu postes l'adresse générée? Daniel a écrit dans le message de news:
Daniel> Je disais ça parce que certains (...) partaient dans des calculs de nombre de semaines si elle commençait un lundi ou un vendredi ou que sais-je alors que le nombre de semaines je le connais déjà.
Bref, ton classeur est excellent, je n'ai qu'un soucis : je ne dois pas avoir la formule dans each c du range("a2:l2") mais toutes les deux cellules (du range("i9:ae9")).....comment je fais ? :D
recherche.quad
Salut.
"toutes les deux cellules (du range("i9:ae9"))" Ca veut dire dans I9, K9, M9, O9, ........., AE9 Le nombre de semaine est un peu plus haut, en I3, K3, M3, O3, .........., AE3 (I3 et J3 étant fusionnées, idem pour K3 et L3 etc).
Salut.
"toutes les deux cellules (du range("i9:ae9"))" Ca veut dire dans I9,
K9, M9, O9, ........., AE9
Le nombre de semaine est un peu plus haut, en I3, K3, M3,
O3, .........., AE3 (I3 et J3 étant fusionnées, idem pour K3 et L3
etc).
"toutes les deux cellules (du range("i9:ae9"))" Ca veut dire dans I9, K9, M9, O9, ........., AE9 Le nombre de semaine est un peu plus haut, en I3, K3, M3, O3, .........., AE3 (I3 et J3 étant fusionnées, idem pour K3 et L3 etc).
recherche.quad
C'est bon, j'ai modifié ta macro et ça marche.
Merci beaucoup pour ton aide ;-) Merci à toi FFO aussi ;-)
@+
C'est bon, j'ai modifié ta macro et ça marche.
Merci beaucoup pour ton aide ;-)
Merci à toi FFO aussi ;-)