Microsoft 365 Calcul de ligne qui ne se fait plus automatiquement...

  • Initiateur de la discussion Initiateur de la discussion Rikko14
  • 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 !

Rikko14

XLDnaute Junior
Bonjour,
J'ai 2 lignes qui ne se calcul plus automatiquement sur mes onglets 2023, 2024 et 2025
"Achat mensuel" et "frais de réparation mensuel"
Pouvez vous m'aider à corriger ?

"Achat mensuel" : ligne 386 en 2024 et ligne 222 en 2023
"frais de réparation mensuel" : ligne 388 en 2024, ligne 333 en 2025 et ligne 224 en 2023

au travail j'utilise office 365, chez moi office 2016 ou 2019 je ne sais plus.

Merci de votre aide.
 

Pièces jointes

Bonjour,
J'ai 2 lignes qui ne se calcul plus automatiquement sur mes onglets 2023, 2024 et 2025
"Achat mensuel" et "frais de réparation mensuel"
Pouvez vous m'aider à corriger ?

"Achat mensuel" : ligne 386 en 2024 et ligne 222 en 2023
"frais de réparation mensuel" : ligne 388 en 2024, ligne 333 en 2025 et ligne 224 en 2023

au travail j'utilise office 365, chez moi office 2016 ou 2019 je ne sais plus.

Merci de votre aide.
Bonjour,

J'ai changé pour 2023 la ligne 205 pour mettre une date et formatée pour afficher que le mois.
J'ai changé la formule de la ligne 222 pour faire le match avec le mois et les totaux se calculent.
 

Pièces jointes

Bonjour Rikko14, Dand87, le forum,

Pour l'onglet 2023, formule en M222 à tirer vers la droite :
Code:
=SOMMEPROD(N(TEXTE($E$2:$E$192;"mmmm")=M$205);$G$2:$G$192)
Formule en M224 :
Code:
=SOMMEPROD(N(TEXTE($E$2:$E$192;"mmmm")=M$205);$H$2:$H$192)
Fonctionnent sur toutes versions Excel.

Le point-virgule permet de sommer les colonnes G ou H même si elles contiennent des textes.

Pour les onglets 2024 et 2025 il suffit d'adapter ces 2 formules.

A+
 

Pièces jointes

Bonjour,

J'ai changé pour 2023 la ligne 205 pour mettre une date et formatée pour afficher que le mois.
J'ai changé la formule de la ligne 222 pour faire le match avec le mois et les totaux se calculent.

Bonjour @Dand87,
je ne vois pas avec votre modif les cacul automatique d'achat mensuel et de frais de réparation mensuel :

1748934876726.png
 
Bonjour Rikko14, Dand87, le forum,

Pour l'onglet 2023, formule en M222 à tirer vers la droite :
Code:
=SOMMEPROD(N(TEXTE($E$2:$E$192;"mmmm")=M$205);$G$2:$G$192)
Formule en M224 :
Code:
=SOMMEPROD(N(TEXTE($E$2:$E$192;"mmmm")=M$205);$H$2:$H$192)
Fonctionnent sur toutes versions Excel.

Le point-virgule permet de sommer les colonnes G ou H même si elles contiennent des textes.

Pour les onglets 2024 et 2025 il suffit d'adapter ces 2 formules.

A+
Bonjour @job75,

je pensais que c'était bon mais en 2025 il est indiqué dans le tableau des frais d'achat et de réparation sur des mois qui ne sont pas encore passé.
Et sur certains mois comme avril 2025, le montant d'achat ne correspond pas, si je sélectionne "date d'achat avril 2025" le calcul en bas de page est de 998 €, dans le tableau il est indiqué 1013 €...

1748935210357.png


1748934566992.png


Citer Répondre
Signaler Modifier Supprimer
 
Je n'avais pas fait attention mais votre fichier n'est pas cohérent, il faut revoir sa conception.

En colonne E de l'onglet 2024 il y a des dates des années 2002 et 2023...

En colonne E de l'onglet 2025 il y a des dates des années 2002 2023 et 2024...

Sur les achats d'avril 2025 ma formule récupère donc 15 € d'avril 2024 en plus des 998 € d'avril 2025.

Une remarque pour l'onglet 2023 : les formules en lignes 228 229 231 ne vont pas car elles créent des références circulaires sur T228:T233.
 
Je n'avais pas fait attention mais votre fichier n'est pas cohérent, il faut revoir sa conception.

En colonne E de l'onglet 2024 il y a des dates des années 2002 et 2023...

En colonne E de l'onglet 2025 il y a des dates des années 2002 2023 et 2024...

Sur les achats d'avril 2025 ma formule récupère donc 15 € d'avril 2024 en plus des 998 € d'avril 2025.

Une remarque pour l'onglet 2023 : les formules en lignes 228 229 231 ne vont pas car elles créent des références circulaires sur T228:T233.
@job75 ,

J'ai corrigé 2002 en 2022
Pour les autres dates c'est cohérent car je peux acheter des trucs en 2023 que je vends en 2025, donc il faudrait que la formule d'achat et de réparation fonctionne uniquement par mois de l'année en cours et non pas le mois car cela prends le même mois de toutes les années...

Une remarque pour l'onglet 2023 : les formules en lignes 228 229 231 ne vont pas car elles créent des références circulaires sur T228:T233.
Désolé, je ne comprends pas votre phrase..
 

Pièces jointes

il faudrait que la formule d'achat et de réparation fonctionne uniquement par mois de l'année en cours et non pas le mois
Pas compliqué, il suffit de concaténer l'année dans les formules, voyez le fichier joint. .

Pour l'onglet 2023, formule en M222 à tirer vers la droite :
Code:
=SOMMEPROD(N(TEXTE($E$2:$E$192;"mmmmaaaa")=M$205&2023);$G$2:$G$192)
Formule en M224 :
Code:
=SOMMEPROD(N(TEXTE($E$2:$E$192;"mmmmaaaa")=M$205&2023);$H$2:$H$192)
Mais je ne suis pas sûr que cela convienne car une date de 2023 peut se trouver aussi dans les onglets 2024 ou 2025.

Il faudrait alors passer en revue toutes les feuilles 2023 2024 2025 pour consolider les achats/réparations d'un mois.

Cela nécessite d'utiliser le VBA, si c'est ce que vous souhaitez dites-le.

Nota : voyez les formules corrigées en lignes 228 229 et 231 pour éviter les références circulaires.
 

Pièces jointes

Bonjour le forum,
Il faudrait alors passer en revue toutes les feuilles 2023 2024 2025 pour consolider les achats/réparations d'un mois.

Cela nécessite d'utiliser le VBA, si c'est ce que vous souhaitez dites-le.
Voici la fonction VBA à utiliser, le code est placé impérativement dans un module standard (Module1) :
VB:
Function MaSomme(titredate$, titremontant$)
Application.Volatile 'la fonction se recalcule quand une cellule quelconque est modifiée
Dim annee%, w As Worksheet, coldate%, colmontant%, tabledate, tablemontant, nlig&, i&, dat As Variant, mois%, a(1 To 12)
annee = Val(Application.Caller.Parent.Name)
For Each w In Worksheets
    If w.Name Like "####" Then
        coldate = Application.Match(titredate, w.Rows(1), 0)
        colmontant = Application.Match(titremontant, w.Rows(1), 0)
        nlig = w.Cells(w.Rows.Count, coldate).End(xlUp).Row + 1 'au moins 2 éléments
        tabledate = w.Cells(1, coldate).Resize(nlig) 'matrice, plus rapide
        tablemontant = w.Cells(1, colmontant).Resize(nlig) 'matrice
        For i = 2 To nlig - 1
            dat = tabledate(i, 1)
            If IsDate(dat) Then If Year(dat) = annee Then _
                If IsNumeric(tablemontant(i, 1)) Then mois = Month(dat): a(mois) = a(mois) + CDbl(tablemontant(i, 1))
        Next i
    End If
Next w
MaSomme = a 'matrice vecteur horizontak
End Function
Dans la feuille "2023" sélectionnez la plage M222:X222 et entrez dans la barre de formule =MaSomme($E$1;$G$1)
puis validez en bloc matriciellement par Ctrl+Maj+Entrée.

De même Sélectionnez M224:X224 et entrez =MaSomme($E$1;$H$1)

Les formules des 3 feuilles se recalculent en 0,01 seconde.

La fonction est volatile car il faut qu'elle se recalcule quand des cellules sont modifiées.

Pour éviter l'invite à la fermeture si aucune modification j'ai mis dans ThisWorkbook :
VB:
Private Sub Workbook_Open()
Application.OnTime 1, Me.CodeName & ".EviteInvite" 'lancement différé
End Sub

Sub EviteInvite()
Me.Saved = True 'évite l'invite à la fermeture si aucune modification
End Sub
A+
 

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

Discussions similaires

Réponses
2
Affichages
642
Retour