Modification automatique d'une variable dans une formule

Bonjour à toutes et tous,

J’ai un hydrogramme sur l'année des débits moyens journaliers d’un ruisseau dans la colonne B.

Les débits vont de 0.17 m³/s à 20.02 m³/s.

Dans la colonne C, je voudrais dérouler la formule : =NB.SI(B:B ; classe de débit de 0.16 à 20.02) dans le but d'avoir les débits classés par 0.1 m³/s

Comment faire pour dérouler en modifiant seulement et automatiquement la classe de débit de 0.16 à 20.02 ?

Merci beaucoup !

Bonjour

avec LIGNE ?

=NB.SI(B:B;"0,"&LIGNE(C2))

a tester en PJ

14excel-pratique.xlsm (15.25 Ko)

Je ne connais pas cette fonction, je vais essayer de l'appliquer, merci beaucoup.

RE

LIGNE()

donne le numéro de la ligne en cours

LIGNE(C2)

donne 2

ta première valeur en ligne 3 est 2 il faut donc employer

LIGNE(C2)

a titre indicatif la même chose existe pour Colonne

A plus sur le forum

Bonsoir à tous,

A priori la solution de @papyg ne permet pas de dépasser 0,90.

il faudrait =NB.SI(B:B;0,1*LIGNE(C2))

ce qui est plus simple que la macro ci jointe puisqu'elle est faite:

Sub GJC()
Dim T, i As Double, Dico, MonTab, Cel as Range
With Worksheets(" 2019") ' il y a un espace devant "2019"
Set Dico = CreateObject("Scripting.Dictionary")
For i = 0.2 To 20.2 Step 0.1
    Dico(CStr(Round(i, 1))) = 0
Next

T = .Range("B3:B" & .Range("A" & Rows.Count).End(xlUp).Row)
For i = LBound(T) To UBound(T)
    Dico(CStr(T(i, 1))) = Dico(CStr(T(i, 1))) + 1
Next

MonTab = Application.Transpose(Array(Dico.keys, Dico.Items))
.Range("D3").Resize(UBound(MonTab, 1), UBound(MonTab, 2)) = MonTab
For Each cel In .Range("D3:D" & 3 + Dico.Count)
    cel.Value = CDbl(cel.Value)
Next

End With
End Sub

A+

Bonjour à tous

AlgoPlus a dit

A priori la solution de @papyg ne permet pas de dépasser 0,90.

ce qui voudrait dire qu'il n’y a pas plus de 90 lignes dans une feuille Excel ????

si en C301 on saisie la formule

="0,"&LIGNE(C300)

le résultat affiché est 0,300

si tu pouvais m'expliquer ton assertion AlgoPlus ça m'éviterais de refaire cette erreur que je ne comprends pas

A plus sur le forum

re

a force de me poser le test dans tous les sens j'ai compris

en fait j'avais une mauvaise interprétation et bien entendu

il faut passer à 1, puis 2,

merci beaucoup AlgoPlus pour cette rectification

A plus sur le forum

Excel est pour moi un outil que j'utilise sans trop comprendre le code...

La macro écrite par AlgoPlus fonctionne très bien.

Effectivement, mon énoncée n'était peut-être pas très claire pour Papyg.

Néanmoins, j'ai maintenant l'outil que je dois adapter à différents débits et en parallèle pour agréger des chroniques de pluies.

J'espère que j'y parviendrai.

Merci beaucoup pour l'instant et bonne journée !

re

a force de me poser le test dans tous les sens j'ai compris

en fait j'avais une mauvaise interprétation et bien entendu

il faut passer à 1, puis 2,

a priori il faut passer de 0,1 à 20,02 (20,1 dans mon code) par pas de 0,1

avec "0," + ligne(x)

Ligne 1 => 0,1

Ligne 9 => 0,9

Ligne 10 =>0,10

Ligne 11 =>0,11

Ligne 91 =>0,91

Ligne 100 =>0,100

A+

Super les amis,

A force de tâtonner en modifiant la macro, je suis même arrivé à adapter pour des chroniques de pluies en changeant le pas, ou autres variables. Bien sûr, en ne comprenant toujours rien à l'écriture.

Je m'y remettrai ce soir et si tout va bien, je clôturerai le sujet, grand merci encore !

Rechercher des sujets similaires à "modification automatique variable formule"