2017-02-25 2 views
2

J'essaie de compter le nombre de cellules dans une rangée qui contiennent des valeurs "valides". Il existe de nombreux critères pour que la valeur soit valide. Jusqu'à présent, j'ai ceci:Excel vérifier si la valeur est un nombre à l'intérieur de COUNTIFS

COUNTIFS(INDEX(S2ScoresAssQ1,ROW()-4,0),"<>",S2UnitSelectorQ1,"<>2",S2CodeAssQ1,O$2) 

mais les cellules qui répondent à toutes les exigences et contiennent des formules qui évaluent à « » sont toujours comptés, quand ils ne devraient pas être. En d'autres termes, certaines des cellules contiennent cette formule:

=IF(H5<>"",H5*I$3/H$3,"") 

Si cela évalue un nombre, il doit être compté. Si elle est évaluée à "", alors elle ne devrait PAS être comptée. ISNUMBER fonctionnerait, mais je ne sais pas comment mettre cela dans les COUNTIFS.

est un exemple:

enter image description here cellule F4 doit afficher '1', car il n'y a qu'une seule valide 'A' affectation. Le code dans la colonne F (F3 cellulaire) est la suivante:

=COUNTIFS(B$2:E$2,F$2,B3:E3,"<>") 

Le code est la colonne E (cellule E3) est:

=IF(ISNUMBER(D3),D3/12,"") 
+0

Voir ci-dessus édite. – user3925803

+1

Essayez = COUNTIFS (B $ 2: E $ 2, F $ 2, B4: E4, "<> *", B4: E4, "<>") –

+0

Oui, cela semble fonctionner. Merci! – user3925803

Répondre

0

Comme Tom Sharpe dit, en utilisant:

=COUNTIFS(B$2:E$2,F$2,B4:E4,"<>*",B4:E4,"<>") 

fonctionne dans l'exemple, avec "<>" éliminant les cellules vraiment vides et "<> *" éliminant les cellules qui contiennent des formules qui évaluent à "" (tout en laissant les formules qui évaluent à un nombre).

j'ai pu résoudre le problème dans mon code d'origine en utilisant SUMPRODUCT():

=SUMPRODUCT(--ISNUMBER(INDEX(S2ScoresAssQ1,ROW()-4,0)),--(S2UnitSelectorQ1<>2),--(S2CodeAssQ1=O$2))