(Résolu par Job75) Formules Sommes et Cumul Variables

  • Initiateur de la discussion Initiateur de la discussion sofiacasandra2016
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

sofiacasandra2016

Guest
Bonjour et bonne année à tous,
dans mon fichier ci-joint j'ai 3 onglet.
  • dans l'onglet (01-17) je cherche une formule variable dans Q10 comme ceci:
Q10 = la somme de tout les mois de l'année 2017 c'est à dire somme(F10: P10) + F10 de l'onglet (12-17) qui représente janvier de la même année
et cette même formule dans l'onglet (02-17) devient sur P10 :
P10= $E13$ + somme(F10:O10) + F10 (F10 de l'onglet précédent 01-17)
(même chose pour AB10 de l'onglet (01-17) et AA10 de l'onglet (02-17)
  • la deuxième formule concerne R10 et AC10 de l'onglet 01-17) :
R10 = $E10$ qui est toujours fixe + la somme de toutes les cellules qui sont avant la colonne R et dont les cellules de la ligne 10 est un mois
c'est a dire R10= $E10$ + somme(F10: P10)

AC10= $E10$ + somme(F10: P10) + somme(S10:AA10) (la formule exclut automatiquement Q10, R10, AB10 car Q9, R9, AB9 n'est pas un mois)

Merci d'avance pour assistance

Cordialement
Sofia
 

Pièces jointes

Dernière modification par un modérateur:
Re,

La macro Incremente précédente supprime/insère/copie des colonnes entières.

Si l'on veut faire cela uniquement sous la ligne 8 :
Code:
Sub Incremente() 'Macro - 15/01/17
Dim w As Worksheet, dat$, maxi&, i%, f$, derlig&
For Each w In Worksheets
  dat = "1-" & w.Name
  If IsDate(dat) Then If CDate(dat) > maxi Then maxi = CDate(dat): i = w.Index
Next
If maxi = 0 Then Exit Sub
Application.Calculation = xlCalculationManual 'évite les recalculs des formules volatiles
Sheets(i).Copy After:=Sheets(i)
With Sheets(i + 1)
  .Name = Format(maxi + 31, "mm-yy")
  .Visible = xlSheetVisible 'si la feuille est masquée
  f = .[F9].Formula
  derlig = .Cells.SpecialCells(xlCellTypeLastCell).Row
  If Month(maxi + 31) < 12 Then
    .Range("F9:F" & derlig).Delete xlToLeft
  Else
    Application.ScreenUpdating = False
    .Range("F9:P" & derlig).Insert xlToRight 'insertion de 11 colonnes pour en faire 14
    .Range("T9:AG" & derlig).Copy .[F9] '14 colonnes
  End If
  .[F9] = f
End With
Application.Calculation = xlCalculationAutomatic 'recalcul de toutes les feuilles
End Sub
Il est préférable que la largeur des colonnes à partir de la colonne F soit toujours la même.

Fichier (2).

A+
 

Pièces jointes

Dernière édition:
Bonsoir Job, tout le monde
merci beaucoup c'est exactement ce que je voulais 🙂 vous êtes un vrai expert
je vais vous casser la tête pour un autre sujet dont j'essaie d'appliquer un code que j'ai trouvé sur ce forum

Cordialement
Sofia
 
Bonjour Job,
Merci pour la formule concernant le cumul j'avais oublié ça
mais la formule du cumul par exemple pour S10=E10+somme(S10:Q10) et AD10=E10+somme(S10:Q10)+Somme(T10:AB10)
c'est à dire exclure les colonnes EX et cumul de la somme

Cordialement
 
re,
enfin c'est la formule que je cherchais 🙂 merci beaucoup Job pour ce joli travail
je m'excuse si je suis obstinée dans mes demandes,
merci aussi à tout les membres qui ont donné répondu sur mon sujet

Cordialement
Sofia
 
Bonjour Sofia, le forum,

J'ai bien dit :
OK, ce que vous voulez est logique si pour chaque nouvelle feuille on met à jour la cellule E10.
Alors ne faut-il pas utiliser cette fonction VBA :
Code:
Function CumulStade()
Application.Volatile
Dim dat As Date, i%, w As Worksheet
dat = CDate("1-" & Application.Caller.Parent.Name)
If Month(dat) = 12 Then Exit Function 'RAZ
On Error Resume Next 's'il manque des feuilles
For i = 1 To Month(dat)
  Set w = Sheets(Format(DateAdd("m", -i, dat), "mm-yy")) 'mois précédent
  If Not w Is Nothing Then CumulStade = w.[E10] + w.[F10]: Exit Function
Next
End Function
La formule =CumulStade() est entrée en E10 par la macro Incremente.

Fichier (3).

Bonne journée.
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

S
Réponses
3
Affichages
1 K
S
H
  • Question Question
Réponses
18
Affichages
14 K
Hollowman06
H
Retour