Formule Excel pour déterminer l'ID de cellule lorsqu'une série de nombres devient négatif

Exemples de données

AB 1 Date Amount 2 Apr 1 $6,000 3 May 1 $4,250 4 June 1 $2,750 5 July 1 $1,000 6 Aug 1 -$0.075 <- This Cell/Row 7 Sept 1 -$0.2500 

Dans une colonne de nombres (en réalité 100-200 lignes), lorsque la valeur passe à négatif, par exemple, si ces sums, nous sums des sums dus sur un prêt, lorsque le prêt serait remboursé. Notez que la différence réelle entre les numbers fluctue en fonction des intérêts, des taxes, des paiements ponctuels, etc. Je ne peux donc pas countr (total / paiement) = nombre de mois.

Existe-t-il un moyen d'utiliser les formules d'Excel pour déterminer cela? C'est peut-être un cas d'exiger VBA (ce qui est bien) mais si je peux l'éviter, j'aimerais bien.

La fonction de correspondance renvoie un indice de scope

 =MATCH(matchValeu, range, matchType: 0=exact, 1=greater than, -1=less than =MATCH(0, B2:B7, -1) = MATCH (matchValeu, range, matchType: 0 = exact, 1 = plus grand que, -1 = inférieur à =MATCH(matchValeu, range, matchType: 0=exact, 1=greater than, -1=less than =MATCH(0, B2:B7, -1) 

Faites correspondre la première cellule inférieure à 0 dans la gamme B2: B7. À partir de vos données d'échantillons, cela renverrait 5

Utilisez la fonction Offset pour renvoyer une cellule particulière en fonction de la valeur de l'indice

Utilisez la formule MATCH pour déterminer le numéro de ligne.

 =MATCH(lookup value, lookup range, lookup type) =MATCH(0,B1:B7,-1) = MATCH (valeur de search, plage de search, type de search) =MATCH(lookup value, lookup range, lookup type) =MATCH(0,B1:B7,-1) 

Vous devrez utiliser le type de correspondance de -1, car vos données sont en ordre décroissant. Ce paramètre renverra la plus petite valeur supérieure ou égale à la valeur de search de 0.

Selon vos données, cela renverrait la ligne numéro 5 . Vous vous attendez à voir la ligne numéro 6 , donc la formule doit être étendue comme suit.

 =MATCH(0,B1:B7,-1)+1 

Pour déterminer l'ID de la cellule, vous devriez appliquer cette formule dans une formule ADRESSE .

 =ADDRESS(Row number, Column number) =ADDRESS(MATCH(0,B1:B7,-1)+1,2) = ADRESSE (numéro de ligne, numéro de colonne) =ADDRESS(Row number, Column number) =ADDRESS(MATCH(0,B1:B7,-1)+1,2) 

Cela renverrait la valeur $ B $ 6

Il serait probablement plus utile de renvoyer la date ou la valeur associée. Cela peut être fait avec une formule OFFSET .

 =OFFSET(A1,MATCH(0,B1:B7,-1),0) =OFFSET(A1,MATCH(0,B1:B7,-1),1) = OFFSET (A1, MATCH (0, B1: B7, -1), 0) =OFFSET(A1,MATCH(0,B1:B7,-1),0) =OFFSET(A1,MATCH(0,B1:B7,-1),1) 

La première formule renverrait la date de A6, le 1er août

La deuxième formule renverrait la valeur B6, – 0,075 $

Je ne suis pas sûr de vouloir faire.

Si vous voulez éviter d'avoir un nombre négatif, vous pouvez le faire:

 =IF(YOUR_CELL_ACTUAL_FORMULA < 0 , 0, YOUR_CELL_ACTUAL_FORMULA) 

Si vous voulez savoir quand le nombre devient négatif, vous pouvez le faire:

 =MATCH(0, YOUR_AMOUNT_RANGE, -1) 

Cela vous donnera le numéro de première ligne lorsque le montant est négatif.