Microsoft 365 Réparer mes formules pour les rendre active

sev31130

XLDnaute Impliqué
Bonsoir

j'ai un fichier ou j'ai 6 feuilles de 01 à 06 les formules sont toutes les mêmes dans toutes les feuilles qui sont toutes aux mêmes formats, il n'y a que les données de calcul qui changent mais sur chaque feuille j'ai le même résultat je pense qu'il doit y avoir une notion de feuille à donner dans les formules que j'ai sur chaque feuille
mais je ne sais pas le faire
je vous joins le fichier si par hasard vous avez la gentillesse de me modifier les formeules
par avance merci
Cordialement
YC
 

Pièces jointes

  • Sev31130_exemple2 (1).xlsm
    546.3 KB · Affichages: 9
Dernière édition:

Dranreb

XLDnaute Barbatruc
Bonsoir.
Les référence de cellules non précédées d'une référence de feuille concernent bien la feuille des cellules portant ces formules, pas de problème.
En revanche il y a un problème du coté de la Function NbZeroAprèsDernier1: elle invoque des cellules de la feuille active au lieu de celles de la plage spécifiée. En l'écrivant comme ça ça va mieux :
VB:
Option Explicit
Function NbZeroAprèsDernier1(ByVal Plg As Range) As Integer
   Dim TDon(), L As Long
   TDon = Plg.Value
   For L = UBound(TDon, 1) To 1 Step -1
      If Not IsEmpty(TDon(L, 1)) Then
         If TDon(L, 1) = 0 Then
            NbZeroAprèsDernier1 = NbZeroAprèsDernier1 + 1
         Else
            Exit Function: End If
         End If
      Next L
   End Function
Par ailleurs elle est invoquée en matriciel ce qui n'a pas lieu d'être et l'argument ne semble pas toujours couvrir toutes les données. Vous auriez intérêt à mettre celles ci sous forme de tableaux Excel et en spécifier comme arguments les références structurées des colonnes.
 

sev31130

XLDnaute Impliqué
bonjour

merci de m'avoir renseigner et en effet en changeant dans le module, mais n'y connaissant rien je me suis servi d'une demande que j'avais fait pour un tableau il y a déjà quelques temps et j'ai fais les autres feuilles après donc ce n'est pas de la faute de la personne qui m'avaitécrit ce bout de Vba mais je ne savais même pas qu'il y avait un module, donc merci de me l'avoir indiquer et de m'avoir fait ce changement .

afin de pouvoir tirer mes formules je voudrais savoir comment faire car si je tire automaqiquement les calculs se font, je pense que je dois y inclure la notion de AUJOURD4HUI
pourriez vous me dire comment l'inclure dans cette formule (=--(B246=$K246)) par avance merci
ou existe t il un autre moyen pour tirer les formules pour n'avoir que les résultats depuis le début jusuq'à ce jour sans avoir les valeurs du lendemant et des autres jours
(voir feuille 01 du fichier)
Par avance merci
Cordialement

(je comprends pas votre
Par ailleurs elle est invoquée en matriciel ce qui n'a pas lieu d'être et l'argument ne semble pas toujours couvrir toutes les données. Vous auriez intérêt à mettre celles ci sous forme de tableaux Excel et en spécifier comme arguments les références structurées des colonnes.

si vous pensez que c'est mieux j'aimerais que l'on me fasse une feuille et je ferais un copier coller sur les autres feuilles en remplissant les données.
(j'ai 80 ans et essaie de m'en sortir comme je peux mais ce n'est pas toujours facile et c'est pour cela que je viens vers vous pour essayer d'apprendre et de faire fonctionner mes fichiers- merci)

PS je vous joins le fichier avec la modif que vous me conseiller
 

Pièces jointes

  • Sev31130_exemple2 (1).xlsm
    565.2 KB · Affichages: 1

Dranreb

XLDnaute Barbatruc
Bonjour.
Les '{' et '}' dans la barres de formule indiquent que la formule a été validée par Ctrl+Maj+Entrée. Ça ne se justifiait pas. Il vaut mieux les revalider par Entrée.
Il semble y avoir moins de formules qui ne couvrent pas toute la plage dans le dernier classeur joint. Il y en a quand même au moins une en '06'!AT3 validé par Ctrl+Maj+Entrée :
Code:
=NbZeroAprèsDernier1(AT8:AT$30)
 

sev31130

XLDnaute Impliqué
Re bonjour

oui en effet vous avez raison une formule ou j'ai mis 30 au lieu de 300
voila c'est rectifié auins si je suis sur toutes les feuilles à l'identiques et toutes les plages sont les mêmes

Pensez vous que je peux tirer mes formules comme je vous le demande sans quelle se calcul et me mettent un résultat comme sur le fauille 1du fichier par exemple, comme je vous le demande dans mon message précédent
si oui comment ?
afin de pouvoir tirer mes formules je voudrais savoir comment faire car si je tire automaqiquement les calculs se font, je pense que je dois y inclure la notion de AUJOURD4HUI
pourriez vous me dire comment l'inclure dans cette formule (=--(B246=$K246)) par avance merci
ou existe t il un autre moyen pour tirer les formules pour n'avoir que les résultats depuis le début jusuq'à ce jour sans avoir les valeurs du lendemant et des autres jours
(voir feuille 01 du fichier)

Par avance merci
Cordialement

Après cela nous pourrons mettre fin à ce dosssie mais je tiens à vous remercier par avance
CY
 

sev31130

XLDnaute Impliqué
Bonsoir

je m'exprime mal et je crois que vous comprrendrez mieux si vous ouvrez le fichier joint et que vous lisez sur la fauille ma remarque et ma demande
Par avance merci
je suis navré de vous déranger et de vous faire perdre du temps

Cordialement
 

Pièces jointes

  • Sev31130_exemple2 (1).xlsm
    618.9 KB · Affichages: 2

Dranreb

XLDnaute Barbatruc
Bonsoir.
Vous auriez intérêt à prendre $A pour la date, car en propageant vers la droite il a changé A en C etc.
Je conseillerais aussi en A8, à propager sur 291 lignes :
Code:
=DECALER(A8;-1;0)+1
Et tant qu'à faire avec le même format en A1 :
Code:
=AUJOURDHUI()
comme ça éviterait d'utiliser des centaines de fois AUJOURDHUI(), ce serait $A$1 c'est tout.
Pour avoir la ligne du jour en B2 :
Code:
=DECALER($P$7;$A$1-$A$7;0)
Par ailleurs si les cellules de la plage spécifiée à la Function NbZeroAprèsDernier1 peuvent contenir des formules renvoyant un texte vide, il vaudrait mieux y remplacer le test indiqué ci après en commentaire par celui en dessous :
VB:
'      If Not IsEmpty(TDon(L, 1)) Then
      If TDon(L, 1) <> "" Then
 
Dernière édition:

Discussions similaires

Réponses
16
Affichages
457
Réponses
25
Affichages
638

Statistiques des forums

Discussions
312 079
Messages
2 085 128
Membres
102 783
dernier inscrit
Basoje