ExcelにCOUNTIFを設定しています。

セル範囲【D9:Y9】には、
○、△、×のいずれかが入力されています。

A9が空欄でなければ、○の数をカウントするには、
以下の数式でOKでした。

 =IF(A9="","",COUNTIF(D9:Y9,"○"))


この数式を○か△であればカウントするような数式に
変更したいのですが、なかなかうまくいきません。
ORを組み合わせればいいのでしょうか・・・

Excelのバージョンは2003です。

よろしくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

=IF(A9="","",SUM(COUNTIF(D9:Y9,{"○","△"})))


などですが,
もっと単純に
=IF(A9="","",COUNTIF(D9:Y9,"△")+COUNTIF(D9:Y9,"○"))
のようにして頂いた方が簡単です。

OR関数で「または」拾うといった計算は,COUNTIF関数では出来ません。
    • good
    • 0
この回答へのお礼

回答ありがとうございました。
COUNTIFを足せばいいのですね!
うまくいきました!!
お世話になりました。

お礼日時:2011/04/12 18:20

゛○゛のところを以下のようにしてください。



or(゛○゛,゛△゛)
    • good
    • 0
この回答へのお礼

回答ありがとうございました。
この方法は私も試したのですが、うまくいきませんでした。

お礼日時:2011/04/12 18:18

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q【電気電子工学】「部屋に何人が入ったかカウントする方法を教えてください】 熱線式自動スイッチとカウン

【電気電子工学】「部屋に何人が入ったかカウントする方法を教えてください】


熱線式自動スイッチとカウンタを組み合わせたら出入りする人のカウントは出来ると思います。

お勧めの熱線式自動スイッチとお勧めのカウンターを教えてください。

または既製品でこれが実現出来るよというアドバイスもあれば教えてください。

Aベストアンサー

特許で調べると山のごとく出てきますよ。
メーカー等もわかりますので、そこに問い合わせを
かけてみられては?ただ完璧なものを要求すると
人にタグでもつけておくしかないと思いますけどね。

QCOUNTIF関数 ある範囲の数値でB1セルの数値より小さい数の数を数える方法

教えて下さい
Excel2007です。

COUNTIF関数である範囲の10より小さい数値を調べる時は、
=COUNTIF(範囲,"<10")で数えられます。

10がD1に入っているときは、どのように式を作ればいいのでしょうか?
=COUNTIF(範囲,<D1)では、エラーで計算できません。
=COUNTIF(範囲,"<=10")では、0になってしまいます。
どのような式で数えられるでしょうか

Aベストアンサー

>ある範囲の10より小さい数値を調べる

=COUNTIF(範囲,"<" & D1)
などのように,文字列結合の計算で「<10」になるようにしてやれば計算してくれます。

Q外部スイッチを使って数量をカウントしパソコンで管理する方法

工場のラインで多用の不良が発生しているのですが、不良内容に応じて数量をカウントしパソコンでデータ管理をする方法が無いか調べています。
イメージとしては、製造5ラインに外部スイッチ(USBゲームコントローラーの様な物)を1台づつ設置し、検査員が4種類ぐらいの不良内容に従い、決められたボタンを押し数量をカウントする様な感じです。
PLCで構築するのが良いのでしょうが知識がないので、パソコンとコントローラーなどで構築できればと思っており、ネットワーク構築、ハード(自作PC)などの知識はあり、最終的にはEXCELのVBAなどを使って、リアルタイムに不良率を算出出来る様に進展を考えてます。
設計段階なので、手法の質問になりますが、ご協力の程をお願い致します。

Aベストアンサー

タッチパネルでボタンクリックさせるのが簡単じゃないかな?
作業環境上マウスが利用できるかはわからないけど、マウスでボタンクリックさせてもよい。
あとはキーボードかテンキー使って、key pressなどのイベント拾うという手もあるし、、、

あとは、dbサーバー立ててネットワーク経由でデータ突っ込むか、
テキストファイルでどこか共有フォルダに溜め込むか、何でもあり。

QExcelのCOUNTIFで最初に見つかったセル座標を求める関数は?

A列に、都道府県名がソートされて並んでいます。
=COUNTIF(A:A,"東京都")とすれば、東京都の個数が求められますが、
それが何行目から何行目までなのかがわかりません。
自動的に求める関数はありませんか。

Aベストアンサー

VLOOKUP関数/HLOOKUP関数/LOOKUP関数/MATCH関数あたりを使っちゃ駄目かい?

Q押しボタンスイッチの接点の跳ねの改善。

ひとつ5円とかの押しボタンスイッチは、C-MOSに使用すると、ひと押しで何回も跳ねて5カウントほで出るときがあります。コンデンサや抵抗で対策して不便はありませんが、質問、キーボードについている、伝導ゴムを使ったようなスイッチはその心配はありませんか。それともやはり対策してますか、専門語でジャンプ対策をなんと言いますか。冒頭の押しボタンスイッチや伝導ゴムのスイッチは何といいますか。伝導ゴムも正しい言葉ですか。

Aベストアンサー

ご質問の現象はチャタリングと呼ばれるものです。高価なスイッチか否かによらず、固体接点を使用する限り発生します。(注:水銀スイッチや表面を水銀で濡らした接点によるスイッチなど、液体を使用したスイッチの場合は発生しません。)

チャタリングの対策は、そのまま、チャタリング対策です。代表的な対策は、CR+ヒステリシス(ハード的対策)、読み取りを繰り返しチャタリング間隔より長い期間メークされたらメークと見なす(ソフト的対策)、ブレーク接点とメーク接点がある場合は両接点を使ってFFで受ける(ハード的対策)があります。

押しボタンスイッチの固有名称はタクトスイッチ、マイクロスイッチ等、いろいろあります。

導電ゴムを使ったスイッチの固有名称もいろいろあります。いま思い出せるのはメンブレンスイッチだけですが。

Q【EXCEL VBA】COUNTIF関数について

A列・B列:氏名コード、C列:日付、D列:出社時刻、E列:退社時刻、F列:勤務時間といった具合に1ヶ月分のデータが入力されています。

各々氏名コード毎にG列の月末日の箇所に1ヶ月分の勤務時間の合計を入れているのですが、出社時刻と退社時刻がブランク(休日等)の場合、F列の勤務時間が0時間でなく24:00:00で換算されてしまう為、実質1ヶ月分の勤務時間の合計がその分加算されてしまいます。(画像参照)

そこで、各々氏名コード毎にH列の月末日の箇所に24:00:00で換算されてオーバーしてしまった時間を自動的にカウント出来るようにしたいのです。

手動で勤務時間の1ヶ月の合計を算出する場合は、
[=IF(A32<>A33,SUMIF(A:A,A32,F:F),"")]で、

また手動で24:00:00で換算されてオーバーしてしまった時間をカウントする場合は、
[=COUNTIF(F2:F32,"24:00:00")]

と関数対応できるところまではこじつけたたのですが、マクロで自動的に反映させる方法が分かりません。

何かいい手順がございましたら、ご指導の程宜しくお願い致します。
尚、作業環境はWindows7、office2010です。

A列・B列:氏名コード、C列:日付、D列:出社時刻、E列:退社時刻、F列:勤務時間といった具合に1ヶ月分のデータが入力されています。

各々氏名コード毎にG列の月末日の箇所に1ヶ月分の勤務時間の合計を入れているのですが、出社時刻と退社時刻がブランク(休日等)の場合、F列の勤務時間が0時間でなく24:00:00で換算されてしまう為、実質1ヶ月分の勤務時間の合計がその分加算されてしまいます。(画像参照)

そこで、各々氏名コード毎にH列の月末日の箇所に24:00:00で換算されてオーバーしてしまった時間を自動的に...続きを読む

Aベストアンサー

>F列には[=IF(E2-D2>0,E2-D2,E2+1-D2)]が入っています。
 ⇒この数式を以下のようにすれば調整が不要ではないでしょうか。
  [=IF(E2-D2>=0,E2-D2,E2+1-D2)]

>マクロで自動的に反映させる方法が分かりません
 ⇒何をマクロで自動化したいのか判りませんので具体的に補足して下さい。

QL2スイッチとコリジョンドメイン

 ネットワークの勉強をしています.

 「L2スイッチはEthernetの距離制限(=ハブの接続段数制限)を無効化できる.」という記述を読んだのですが,理解できないのでどなたか教えてください.そこには,「L2スイッチを使わなければ100BASE-TXのハブの制限は2段までだが,L2スイッチが入ると再カウントされる」とあります.

 X: PC-[HUB]-[HUB]-[HUB]-PC (3段)
 O: PC-[HUB]-[L2SW]-[HUB]-[HUB]-PC (1段,2段)

 素人考えなのですが,普通に考えてそんなことはありえない! と思ってしまいます.何か勘違いしているのでしょうか.

Aベストアンサー

2段マデというのは、コリジョンドメインといいますが、CSMA/CDの1つの適用範囲の大きさです。

(リピーター)HUBは、パケットを右から左へビットごとにリアルタイムに中継します。CSMA/CDというEthernetの通信方式が成立するためのパケット伝送遅延時間を満たすためには、リピーターので中継は2段までになります。というのも、中継段数が多いと遅延が長くなりすぎて、ネットワークの向こうの端でパケットの衝突が起きたことを送信元のコンピュータが検知できなくなるからです。

一方L2スイッチやブリッジは、パケットを一旦全部受け取って、改めて他方に再送信します。送信するときにパケットの衝突が起きたら、L2スイッチが再送します。CSMA/CDとは関係のない世界での中継なので(一応)段数の制約はありません。

Qエクセル、COUNTIFS関数の範囲指定について

エクセル2010です。

「A1の文字列が、B列とC列の中から合致し、さらにD列の"○○"という条件を満たすものはいくつあるか」
という数式を作りたいです。
写真でいうと、B・C列の中から中央区があるかどうか、さらにその中に山田がいるか、という検索式です。

そこで、COUNTIFS関数を使い、fxボタンで半自動で作ったところ、
=COUNTIFS(B:C,A1,D:D,"山田")

となったのですが、なぜか結果はエラーになってしまっています。
どうやら検索条件の範囲が「B:C」になっているのが問題なのか、B:BやC:Cだけにすると、ひとつの列なら正常に計算するようです。

そこで式を二つに分け、プラスでつなげてみました。
=COUNTIFS(B:B,A1,D:D,"山田")+COUNTIFS(C:C,A1,D:D,"山田")

こうしてみると一応成功しました。
しかし動作が重くなり、処理に数秒かかるようになってしまいました。
(B:Bなどひとつの列なら、数式を記入した瞬間に結果がでます)
できれば数式は短くシンプルにしたいので、前述の短い形式のようにならないものか、と思います。
COUTIFS関数で、検索範囲を「○列~△列」のようにできないものでしょうか?

アドバイスをよろしくお願いします。

エクセル2010です。

「A1の文字列が、B列とC列の中から合致し、さらにD列の"○○"という条件を満たすものはいくつあるか」
という数式を作りたいです。
写真でいうと、B・C列の中から中央区があるかどうか、さらにその中に山田がいるか、という検索式です。

そこで、COUNTIFS関数を使い、fxボタンで半自動で作ったところ、
=COUNTIFS(B:C,A1,D:D,"山田")

となったのですが、なぜか結果はエラーになってしまっています。
どうやら検索条件の範囲が「B:C」になっているのが問題なのか、B:BやC:Cだけにすると、ひと...続きを読む

Aベストアンサー

COUNTIFS関数を使う限り、動作が重くなるのは避けることができません。ただし列単位の範囲の指定ではなく行を入れた範囲の指定によって多少動作を軽くできるでしょう。
データが多くなる場合には作業列を作って対応するのが最も動作を軽くする方法です。
例えばE1セルには次の式を入力して下方にドラッグコピーします。

=B1&C1&D1

その上で次の式でカウントすればよいでしょう。

=COUNTIF(E:E,"*"&A1&"*山田*")

Qパソコン起動時、メモリーカウントのあと固まります。

パソコンのスイッチを入れると、なかなか起動しない日が2~3日つづきました。メモリーをカウントしてBIOSの詳しい表示が出る前で止まってしまいます。BIOS設定はDELキー押しっぱなしでできる仕様ですが、それもできません。電源を抜いて起動したりすると、うまく最後まで起動することもありましたが、起動してもWINDOWS XP で使用中にブルー画面になり、0x00000F4の表示がでます。でも、もう起動しなくなってしまいました。買って1年なので、マザーボードの電池はたぶんあると思います。
どこが悪いのでしょうか。対処法があれば教えてください。

Aベストアンサー

電源OFFして
メモリーの抜き挿しをして電源を入れてください。

Q【EXCEL2003】範囲に含まれた項目を全部抜き出す関数

質問してばかりで恐縮ですが、また行き詰ってしまいました。
皆さんのお知恵をお貸しください。

添付の画像をご覧いただくと分かりやすいと思いますが、範囲指定するのは『売価』です。
指定した範囲に含まれた売価の行項目を抜き出したいのです。
(表1)から100円以上200円未満の売価の商品を抜き出して(表2)を作りたいのです。

ここで質問した続きになります。
http://oshiete1.goo.ne.jp/qa5628538.html

よろしくお願いいたします。

Aベストアンサー

No.1です!
たびたびお邪魔します。

前回の数式はSheet1のデータが100行目まで対応できる数式でした。
補足を読ませていただくとデータが150個くらいあるということなので
101行目以降のデータが正確ではないと思います。

ということで・・・
前回の表はそのままで200行目まで対応できるような数式にしてみました。
Sheet1の作業列E2セルの数式を
=IF(OR(A2="",COUNTBLANK(Sheet2!$F$1:$F$2)>0),"",IF(AND(B2>=Sheet2!$F$1,B2<Sheet2!$F$2),RANK(B2,$B$2:$B$200,1)*1000+ROW(A1),""))
としてみてください。これをフィルハンドルの(+)マークでダブルクリックか、オートフィルでずぃ~~~!っと下へコピー!

そして、Sheet2のB2セルに
=IF(COUNT(Sheet1!$E$2:$E$200)<ROW(A1),"",INDEX(Sheet1!A$2:A$200,MOD(SMALL(Sheet1!$E$2:$E$200,ROW(A1)),1000)))
という数式を入れ、列方向と行方向にオートフィルでコピーしてみてください。
たぶん大丈夫だと思います。
どうも何度も失礼しました。m(__)m

No.1です!
たびたびお邪魔します。

前回の数式はSheet1のデータが100行目まで対応できる数式でした。
補足を読ませていただくとデータが150個くらいあるということなので
101行目以降のデータが正確ではないと思います。

ということで・・・
前回の表はそのままで200行目まで対応できるような数式にしてみました。
Sheet1の作業列E2セルの数式を
=IF(OR(A2="",COUNTBLANK(Sheet2!$F$1:$F$2)>0),"",IF(AND(B2>=Sheet2!$F$1,B2<Sheet2!$F$2),RANK(B2,$B$2:$B$200,1)*1000+ROW(A1),""))
としてみてく...続きを読む


人気Q&Aランキング

おすすめ情報