
別紙のような表があります。この表は2024年阪神競馬場で行われた、すべてのレースを、1レースを1行であらわしたものの一部で、CからKの列に、各レースの条件が記入されており、これに、Mから左の列に、ある特定の馬の着順が書いてあります。これにフィルターをかけた場合(例:H列で3Rを選び、J列で1200から1400を選んだ場合、N列での21行目から1000行目までの1の数の数量(Range("M13")、2の数の数量(Range("M14")、3の数の数量(Range("M15")を表す関数が知りたいのです。
ちなみに、フィルターをかけないときの、全体での数字は、Range("M2"),Range("M3"),Range("M4")に’=COUNTIF(M$21:M$656,1)、’=COUNTIF(M$21:M$656,2)、’=COUNTIF(M$21:M$656,1)で計算しています。この計算式では、フィルターをかけても数字は変わりません。
実際には、この表の他の列には様々な条件もあり、それらにもフィルターをかけた時の状況で、どのようなときにこれらの馬が入着するのかが知りたいのです。
よろしくお願いいたします。

No.3ベストアンサー
- 回答日時:
No3です。
No2の補足にご提示の関数は何を求めているのかわかりませんけれど、No2の後半で示した「作業列」を設ける代わりに、配列計算で同様の計算を行って求めているものと思います。
手動でフィルターをかけたものに対して、非表示の行をそれぞれSUBTOTAL関数で判別するという、少々本末転倒のきらいはありますが・・
今回のご質問も同様の計算を行いたいのなら可能です。
今回のご質問内容は、そこまで複雑ではないので、AGGREGATE関数やエラー処理は不要と考えられます。
実際のレイアウトがどうなっているのか不明ですけれど、作業列を設けずに計算したいのなら、
=SUMPRODUCT(SUBTOTAL(102,OFFSET(基準セル,ROW(セル範囲1),0))*(セル範囲2=1))
といった式で求められると思われます。
(COUNTIFSではうまく配列計算を行えないので、No1に示したSUMPRODUCTによる方法になります)
最後の「セル範囲2=1」の部分の数字を1、2、3・・と変えれば、表示行のうちでその値になっているセル数をカウントできるようになります。
とは言っても、式の意味をご理解いただけないようですので、これ以上の説明は省略しておきます。
ありがとうございます。何度も申し訳ないです。
上記の式の方が、以前のものより、理解できそうな気もします。
頑張って研究してみます。
ホウン等にありがとうございました。
No.2
- 回答日時:
No1です。
>SUBTOTAL関数を使いやってみましたが、集計方法において、
>1や2を指定する方法がわかりません。
SUBTOTAL関数にはCOUNTIFのような機能はありません。
手動でフィルターをかけるのなら、それもフィルターで抽出すれば良いだけの話です。
フィルターををかけずに抽出するのなら、No1の後半の方法で条件を指定してカウントすれば良いです。
どうしても、中途半端にフィルターをかけて、その結果を利用したいと言うのなら・・
作業列を利用して、作業列にSUBTOTAL関数でその行の表示/非表示を算出するようにしておいて、集計では作業列が表示となっている行だけを対象にするような仕組みにしておけば、COUNTIFS関数で算出できるでしょう。
ありがとうございます。
よく考えたら、以前fujillinさんから、
=IFERROR(SUMPRODUCT((AGGREGATE(15,7,B$20:B$120,ROW(OFFSET($A$1,0,0,SUBTOTAL(102,B$20:B$120))))=ROW(A1))*1),0)
の式を教えていただいていました。この式はその時試してみて、正しかったので別の表で使ったのですが、あまりに難しくて、理解できなかったため、忘れていました。
これを再利用するか、もしくは、フィルターをかけた状態で、一度表を値でコピーし、そのうえで、COUNIF関数で、1.2.3を別々に求めたいと思います。
何度も、ややこしい質問で、申し訳ありませんでした。
本当にありがとうございました。
No.1
- 回答日時:
こんばんは
説明文とご提示の図が合致しているとは思えないので、はっきりとはわかりませんけれど・・
フィルターをかけた状態で、表示セル数などをカウントしたいのなら、SUBTOTL関数を利用することで可能です。
https://support.microsoft.com/ja-jp/office/subto …
第一引数を100番台にすれば非表示の行は対象外とされますので、COUNTやCOUNTAあるいはSUM(対象が1の場合なら合計でも良いので)などが利用できるでしょう。
フィルター操作を行わない状態で集計したいのなら、COUNTIFS関数を用いることで複数の条件に合致するセル数をカウントすることが可能です。
同様のことは、SUMPRODUCT関数を応用する方法でも可能です。
ありがとうございます。
SUBTOTAL関数を使いやってみましたが、集計方法において、1や2を指定する方法がわかりません。101から111を入れてやってみましたが、数値の入ったセルの合計数量は、102で出てくるのですが、これでは1や2が混じっていて、1だけの数量がわからないのです。また103では純粋に数値を合計した値で、これまた1の数量を計算したものとはなっていません。
K21~K1000の中で、フィルターをかけた時に出てくる1の数を関数で求めることはできないのでしょうか?マクロでやれば、できるのですが求める箇所が多すぎて,表も大きいため時間がかかりすぎるのです。
よろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
エクセル初心者です 用語とか良く分からないので簡単に説明していただけると幸いです 表を作っているので
Excel(エクセル)
-
8:40までの出勤は全て8:30にする関数を教えて下さい!!
Excel(エクセル)
-
エクセルの関数ついて
Excel(エクセル)
-
-
4
エクセル初心者です 用語等まだ良く分からないので簡単に説明していただけると幸いです タブの挿入、図形
Excel(エクセル)
-
5
条件付き書式の効率的な設定の仕方について
Excel(エクセル)
-
6
excelVBAについて。
Excel(エクセル)
-
7
フィルター時の、別の列に書いてある数字の表に現れた個別の数字の数量のみを表す式を教えてください。
Excel(エクセル)
-
8
UNIQUE関数、配列数式を使わずに品名ごとの集計を求めたい
Excel(エクセル)
-
9
エクセルの数式が分かりません
Excel(エクセル)
-
10
Excelで合計を求めたいです
Excel(エクセル)
-
11
エクセルのデータについて
Excel(エクセル)
-
12
セル内が空白設定なのに#N/Aと出てくるのを回避する方法を教えてください。
Excel(エクセル)
-
13
1.5ヶ月分の費用按分 エクセル関数
Excel(エクセル)
-
14
【マクロ】メッセージボックスにて、キャンセルをクリックしたら、マクロ終了。エクセルへ戻すには
Excel(エクセル)
-
15
エクセル数式に問題があります
Excel(エクセル)
-
16
Excel いい方法教えてください。
Excel(エクセル)
-
17
納期順に勝手に並べ替えられるようにしたいのですが…
Excel(エクセル)
-
18
45490がどうして
Excel(エクセル)
-
19
Excelで<a>,<b>の入ったセルをcountifすると動作がおかしい。なぜ?
Excel(エクセル)
-
20
今までは、 「CSVの出力先を選択してください。」 という画面から、CSVファイルをデスクトップに引
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルの関数について
-
【マクロ】変数に入れるコード...
-
エクセルのリストについて
-
Office2021のエクセルで米国株...
-
【マクロ】実行時エラー '424':...
-
【マクロ】数式を入力したい。...
-
【マクロ】元データと同じお客...
-
【マクロ】【相談】Excelブック...
-
【マクロ】左のブックと右のブ...
-
vba テキストボックスとリフト...
-
エクセルの複雑なシフト表から...
-
他のシートの検索
-
【画像あり】オートフィルター...
-
エクセルのVBAで集計をしたい
-
【マクロ】【配列】3つのシー...
-
【関数】3つのセルの中で最新...
-
【マクロ】excelファイルを開く...
-
エクセルシートの見出しの文字...
-
Dir関数のDo Whileステートメン...
-
LibreOffice Clalc(またはエク...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】元データと同じお客...
-
エクセルの関数について
-
【画像あり】オートフィルター...
-
エクセルのVBAで集計をしたい
-
エクセルのリストについて
-
【マクロ】数式を入力したい。...
-
【マクロ】【相談】Excelブック...
-
Office2021のエクセルで米国株...
-
【マクロ】実行時エラー '424':...
-
他のシートの検索
-
エクセルの複雑なシフト表から...
-
【マクロ】【配列】3つのシー...
-
vba テキストボックスとリフト...
-
【マクロ】左のブックと右のブ...
-
【マクロ】変数に入れるコード...
-
エクセルシートの見出しの文字...
-
【マクロ】別ファイルへマクロ...
-
【関数】同じ関数なのに、エラ...
-
Amazonでマイクロソフトオフィ...
-
ページが変なふうに切れる
おすすめ情報