- ベストアンサー
列の奇数のカウントの方法
ある列に1セルに1つの数字(1桁や2桁)があり、その列の奇数の数をカウントしたいのですが、適当な関数はありますでしょうか? 教えてください。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
A1からA30に数値があるとして、 =COUNT(IF(MOD(A1:A30,2)=1,A1:A30)) と入力して、 CtrlキーとShiftキーを押しながらEnterキーを押します。 {=COUNT(IF(MOD(A1:A30,2)=1,A1:A30))} のようになります。(配列数式)
その他の回答 (3)
- ja7awu
- ベストアンサー率62% (292/464)
A1:A10の範囲内で奇数をカウントするのであれば、 =SUMPRODUCT((MOD(A1:A10,2)=1)*1) 奇数値を合計するのであれば、 =SUMPRODUCT((MOD(A1:A10,2)=1)*A1:A10) 配列を使わないで済みますが・・・
お礼
ご回答ありがとうございます。 奇数の合計など補足説明も頂き感謝しております。 ありがとうございました。
- crazy_dog
- ベストアンサー率37% (148/391)
こんにちは 一発で解決する方法はわかりませんが、こういう風にしてみたらどうでしょうか? まず、A1(A列)に数字が入っているとします。 それから、B1(B列)に =IF(ROUNDDOWN(A1/2,0)*2=A1,0,1) と入力します。 それから、一番最後の範囲までコピーして、 SUM関数で足していくか、COUNTIF関数で、"1"の数を数えるかすればOKです。
お礼
ご回答 ありがとうございます。 別のセルを設け、セルの奇数の数を1とかに置き換えてその数をカウントするということですか。 一発で解決する方法があれば理想ですので、もうしばらく皆様からの回答を待つこととします。 感謝しております。ありがとうございました。
- ma_
- ベストアンサー率23% (879/3732)
ISODD関数を使います。 この関数を使うには、セットアップ プログラムを実行して分析ツールを組み込み、[ツール] メニューの [アドイン] コマンドを使ってその分析ツールを登録する必要があります。 指定の数列に並行し別の列にその関数をいれます。 G列にあるとすれば、H列に=ISODD(G1)といったように対応する行に式をいれます。 式の結果は TRUE か FALSEででますので、 G列に数字が入っていて、ISODDの関数をH列に入れていて、1行から200行に数をいれているとすれば、 COUNTIF(H1:H200,TRUE)とします。
お礼
早速のご回答ありがとうございます。 ご回答の内容は私にはハイレベルでした。 参考書を片手に調べながら実践してみます。 ありがとうございました。
お礼
ご回答ありがとうございます。 詳しく配列数式というものも知らなかったので、 キーボードの操作手順まで記載していただきわかりやすかったです。 本当にありがとうございました。