• ベストアンサー

ある文字の入ってる行の個数を求めたい。

  A  B  C         D 1  海  山  川    =OR(A1="山",B1="山",C1="山" 2  山  山  海    =OR(A2="山",B2="山",C2="山" 3  川  海  海    =OR(A3="山",B3="山",C3="山" 4               =COUNTIF(D1:D3),TRUE           上記の表で"山"が有るセルを含む行の個数を表示したい。 今は上記の表の脇に次のようにしてますが、もっと良い方法が、 あるかと思い質問します。宜しくお願いします。 =OR(A1="山",B1="山",C1="山" 1の行に"山"が有ればTRUEとして これを各行で行い=COUNTIF(D1:D3),TRUEで結果、”2”と行の個数を 求めてます   

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

質問者には初見かもしれないが、配列数式という解き方があり、 それでやってみます。 例データ A2:D6 海 山 河 田 山 山 海 田 海 岸 岸 橋 山 岸 山 田 岸 海 川 山川 デーたのあるセル以外に =SUM(IF(COUNTIF(OFFSET(A2,ROW(A2:A6)-2,0,1,4),"山")<>0,1,0)) と入れて、SHIFT、CTRL,Enterの3つのキーを同時に押す・ 前後が{ }でかこまれる。 結果 3 ROW(A2:A6)-2+1行すなわちA2行を起点にして、A2,A3、A4、A5、A6の行について、4列A-D列を問題にして、「山」という値のセルを勘定して 0でなければ1、0なら0を各行分足し合わせている。 「山川」のセルは上記式では勘定されない。 既出回答1部のように、作業列が要らないメリットあり。 ーーー この質問は作業列を使わないなら、難しい課題に入ると思う。 質問者には難しすぎる問題だと思うので、問題数をこなし、経験するより他ない。ただし、このニーズの類型は平凡なものなので、過去にも類似質問が出たかもしれない。

cabin8
質問者

お礼

回答を、ありがとうございます。 また、解説まで入れてもらい、理解への助けになります。 ANo1と、一緒ですが、式が理解できてないので勉強中です。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

noname#204879
noname#204879
回答No.2

D1: =(COUNTIF(A1:C1,"山")>0)*1 D2: =(COUNTIF(A2:C2,"山")>0)*1 D3: =(COUNTIF(A3:C3,"山")>0)*1 D4: =SUM(D1:D3)

cabin8
質問者

お礼

早々に回答ありがとうございます。 =0>0はFALSE*1で0 =1>0はTRUE*1で1 と、なる事わかりました。

全文を見る
すると、全ての回答が全文表示されます。
  • maron--5
  • ベストアンサー率36% (321/877)
回答No.1

◆こんな方法はいかがでしょうか? =SUMPRODUCT((COUNTIF(OFFSET($A$1:$C$1,ROW($A$1:$A$3)-1,),"山")>0)*1) または、 =COUNT(0/MMULT((A1:C3="山")*1,1^ROW(1:3)))

cabin8
質問者

お礼

早々と回答をありがとうございます。 ためしたところ、うまくいきました。 ただ答えが出るわけを、勉強中です。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 行を飛ばして検索条件にあう個数を数えたい

    次の表のように 1、2、4、5行 のみの ○ の個数を数えようと COUNTIF関数を使ってみますが上手くいきません。教えて下さい。        A   B   C   1    ○   ○  ×   2    ×   ○  ○   3    ○   ×  ○   4    ○   ○  ×   5    ×   ○  ○   6    ○   ×  ×    

  • エクセルの文字列検索

    Office2003のエクセルで例えば   A B 1 一 山 2 一 山 3 一 川 4 二 海 5 二 海 というような表があるとします。下のように  C D E 1一 山 川 2二 海 C1のセルに「一」を入力すると、対応する山と川をD1とE1の セルに表示してくれるような関数は無いでしょうか? 配列関数など色々探しましたが良いのが分かりません。 宜しくお願いします。

  • エクセル2000 同じ文字が入力されている個数を集計する

    A列には1~47の数字が200行まで入力されているものとします。 1 a c f e d 2 b a e d c 2 c d d f b 2 a f c a c ・ ・ ・ 47 d e d a b これときa~fが入力されている個数を次のように表にしたいと思いますが、関数でできますでしょうか。    a b c d e f 1   1 0 1 1 1 1 2   3 2 4 3 1 2

  • 重複するデータの個数と合計

    こんにちは、2度目の質問です。 またブチ当たってしまいました。    A  |  B 1 A01 |  100 2 B01 |  100 3 A01 |   20 4 C01 |   20 5 A01 |   30 6 A01 |  100 7 A01 |   50 8 C01 |   60 9 B01 |   80 上記のような表があります。 このとき、セル"A1"~"A9"までの、 「A01」の個数は何個か、 「B01」の個数は何個か、 「C01」の個数は何個か、 また、セル"B1"~"B9"までの、 「A01」のB行における数値の合計はいくつか、 「B01」のB行における数値の合計はいくつか、 「C01」のB行における数値の合計はいくつか、 と言うマクロを考えなくてはなりません。 この例のように、たかだか3個とか10個ぐらいなら"COUNTIF"関数を使えばなんて事無いのですが、 この「A01」のような物が1000以上(例えて言うとA0001~A1000と言った感じ)あり、 それが全てランダムで出てきますので、関数で行うのは無理のような気がします。 また、この様な情報が記入されたシートが膨大な量あり、このシート全てに同じ処理を 行わなくてはならず、オートフィルタは使いたくありません。 出来れば、ボタン一発で計算したいのです。 条件に合った重複データの抽出、という質問は良く見かけますが、この様に条件付けが難しい場合は、 どのようにマクロを組めば良いでしょうか、何卒アドバイスをお願いいたします。

  • 文字列Aを含む3列先に、文字列Bを含むセルの個数

    下記のような表があるとします。   A  B  C  D  E  F 1 1-1      OK 2 1-2      OK 3 1-3 4 2-1      OK 5 2-2 A列が"1-"で始まる行に対し、D行にOKが含まれるセルの個数 (この表では2が回答です)を求めたいのですが 方法が全く思いつきません(><) excelにお詳しい方、ご教授頂ければと思います。 宜しくお願い致します。

  • この場合の関数を教えてください。IF関数とCOUNTIF関数?

      A      B    C  D  F  G 1 12300 2 9800 3 14500 上記の様な表($a$1:$d$3) がある時、 B1 ◎      D1 △   F1◎     C2◎         F2△ B3△      D3◎ F1 に◎を入れた時に、 もし、A列の値が10000より大きいなら(注)、範囲$a$1:$d$3の◎の数を数え結果をG1に2と表示させたいです。(F2に△と入れたら2と表示) (注) 1行目は、12300(A1)なので1行目はカウントの範囲。 2行目は、9800で10000より小さいのでカウントの範囲から外れる。 3行目は、14500はカウントの範囲。 2行目の◎(C2)はカウントされないようにするには、 G1にどのようなCOUNTIFの関数を入れればよいのでしょうか? いつも教えているので、考えたのですが? =IF(A1>10000,COUNTIF($B$1:$D$3,F1),"0")では、間違いとは気づいたのですが? (A1>10000が間違い)どの様にして良いか解りません。 どなたか教えてください。宜しくお願いいたします。 (見にくい表で申し訳ありません)

  • 1行の中に該当する文字列の個数をカウントしたい

    お世話になります。Excelの基本的な関数の話かもしれませんが 教えていただきたいことがあります。 A B C D 東京 神奈川 千葉 埼玉 大阪 東京 福岡 東京 神奈川 千葉 東京 千葉 上記のテーブルの各行において、 F 東京 神奈川 千葉 の列に当てはまる文字列の個数をH列に表示したいと考えています。 期待したいH列の表示は H 3 2 4 です。 Fが東京だけでしたら、COUNTIF関数を使う予定でしたが、 適切な関数が思い浮かばず、調べましたがよく調べられませんでした。 上記に表現できていませんが ・テーブルの行は1000、列は30あります。 ・F列は50行ぐらいあります。 お手数ですが、ご教示下さい。よろしくお願いします。

  • 2つのセルの条件に合ったセルの個数

    A 日付 B名称 C可否(○×)も表でA日付が今日より前のものでなおかつCが○のセルの個数を求めたいのですがうまくいきません。 (1) AND(COUNTIF(A1:A10,"<"&TODAY()),COUNTIF(C1:C10,"○")) とするとFALSEと表示される。 どこが悪いのでしょうか?

  • エクセル 複数行ある同一商品を1行にまとめるには?

    同一内容が入力された複数行の合計を出す方法を教えてください。     エクセルの表でA列に商品名、B列に色の種類、C列~E列にサイズごとの個数がある、まったく同じ商品が、複数行にランダムに掲載されています。 A列、B列で同一の情報を持つ商品について、C列~E列のサイズごとの合計を出したいのです。 例)商品名、色、サイズ個数(C列:Sサイズ、D列:Mサイズ、E列:Lサイズの順です。) A1:Tシャツ B1:ホワイト C1:5 D1:4 E1:3   A2:Tシャツ B2:ブラック C2:3 D2:5 E2:5 A3: Tシャツ B2:ホワイト C3:3 D3:3 E3:2 A4: Tシャツ B2:ブラック C4:3 D4:2 E4:3 各商品が300行程あり、オートサムではやりきれません。 すべての各商品(A列、B列が一致するもの)を1行ごとにまとめたシートを作成するにはどうしたら良いでしょうか?

  • 指定文字の同じ行2列、3列目の文字入力の個数

    B列3~12行に文字が入力されており指定文字Bの行の2列目に文字が入力されていればその個数をC14にまた3列目に文字入力個数5個をD14に入力したいのですがどなたか関数が解る方宜しくお願いします。Excel2013です。

専門家に質問してみよう