2016-07-06 20 views
-1

別のセルに格納されているパラメータに応じて、特定の範囲のセル(文字列または数値を含む)から特定の値の出現をすべてカウントする必要があります。細胞。特定の範囲内の値の出現(Excel)(VBAなし)

例として単純なExcelテーブルを用意しました(添付の画像を参照):BASE "100"のVALUE "4"の出現をすべて数えたいとしましょう。結果は2(C4 + C5)でなければなりません。

Attached image

私はCOUNTIFSを使用して機能を見つけることを試みたが、結果なしで。前者は正確な値だけを考慮しているので(セルC5の4は無視されます)、BASE列を別の条件に追加することはできません。

事実私はこれを数式だけでプログラミングする必要があります。

ご協力いただきありがとうございます。

+0

ワイルドカードでcountifを使用してください。 –

+0

あなたの返信のためにこんにちは@ScottCranerありがとう!私はそれについて考えましたが、その場合はC1、C3、C5のセルだけが考慮されます。 –

+1

あなたは正しいですか私の答えは以下を参照してください。次回は、写真の代わりに直接ポストにデータを貼り付けてください。すでにタイプしたものを再入力する必要はありません。 –

答えて

0

使用SUMPRODUCT:

=SUMPRODUCT(($B$2:$B$10=100)*(ISNUMBER(SEARCH(4,$C$2:$C$10)))) 
他のアプローチのカップルがあります

enter image description here

0

は、1単純にあなたのためだけにマッチを特定する別の列を追加することで、その後、あなたのカウントは結果だけを合計持っていますその列の

Solution image

だから我々は、我々はいくつかの基準セル内で検索したい値を入れ、BASEの試合はG2に移行し、我々が探しているVALUEはG3に行きます。列Dにおいて

我々はD2で式を入れ: "= IF(B2 = $ G $ 2、(ISERR(SEARCH($ G $ 3 C2))IF、0,1)、0)"

場合、0を返しますBASEが一致し、我々は、VALUEの少なくとも一つoccurentを見つけることができます

  • B2 = $ G $ 2 - BASE欄には、私たちが
  • ISERR(SEARCH($ G探しているBASEと一致してい$ 3、C2)) - VALUEの検索でエラーが返されますか(VALUEが存在しないことがわかっている場合)。

列Dのすべてのセルにこの数式をコピーして、単純なSUM(D:D)を使用して、条件が満たされたときの発生をカウントできます。


もう少し複雑な選択肢は、配列の数式を使用して1つの数式ですべての一致を見つけて数えさせることです。これは次のようになります。

"{= SUM(IF:B = $ G $ 2、IF ISERR(SEARCH($ G $ 3、C:C))、}}}" "

D列の数式とほとんど同じですが、今はB2/C2などの代わりにB:BとC:Cを使用しています。 EnterだけでなくCtrl + Shift + Enterで編集を終了すると、配列式になります。

Microsoft Array Formula Guidelines

NB:これは、単一の値セルに4の倍数の出現箇所をカウントされません。

P.S.あなたが実際にこのケースで3を返すことを望んでいると仮定します(C7で4を欠場しました)。

関連する問題